Excel'de İki Liste Arasındaki Farkları Hızla Bulma
Excel'de iki listeyi karşılaştırmak ve farklılıkları bulmak için en kolay yol =EĞERSAY veya =DÜŞEYARA formülünü kullanmaktır. Bitişik sütuna =EĞER(EĞERSAY($B$2:$B$100; A2)=0; "Benzersiz"; "İkincisinde var") formülünü girin — bu formül, ilk listedeki hangi değerlerin ikinci listede eksik olduğunu gösterecektir. Farklılıkları görsel olarak vurgulamak için "Koşullu Biçimlendirme"yi kullanın.
Aşağıda, basit formüllerden Power Query ile otomasyona kadar farklı Excel sürümleri ve veri hacimleri için ayrıntılı yöntemler sunulmaktadır:
Temel ilke: Karşılaştırmadan önce verileri mutlaka tek bir biçime getirin — KIRP (TRIM) işleviyle gereksiz boşlukları kaldırın ve sayıların metin olarak kaydedilmediğinden emin olun.
Karşılaştırmadan Önce Verilerin Hazırlanması
Veriler "kirli" ise mükemmel bir formül bile hata verecektir. Kullanıcılar genellikle gizli boşluklar veya farklı büyük/küçük harf kullanımı nedeniyle olmayan yerlerde farklılıklar görürler.
- Boşlukları kaldırma: Yeni bir sütunda
=KIRP(A2)işlevini kullanın, sonucu kopyalayın ve kaynak verilerin üzerine değerler olarak yapıştırın. - Tek tip büyük/küçük harf: Harf büyüklüğü önemli değilse (örneğin, "İstanbul" ve "istanbul" aynı kabul edilmeliyse), tüm verileri
=KÜÇÜKHARF(A2)işleviyle küçük harfe çevirin. - Veri türü: Her iki sütundaki verilerin aynı türde olduğundan emin olun. Excel için
123sayısı ve"123"metni farklı değerlerdir. Biçimi zorunlu kılmak için "Metni Sütunlara Dönüştür" aracını kullanın.
Yöntem 1: EĞERSAY Formülü (Evrensel Yöntem)
Bu yöntem tüm Excel sürümlerinde çalışır ve yeni başlayanlar için anlaşılırdır. Bir listedeki bir değerin diğer listede kaç kez geçtiğini sayar.
Görev: Liste A'da bulunan ancak Liste B'de bulunmayan öğeleri bulma.
- Liste A'nın A sütununda, Liste B'nin ise B sütununda olduğunu varsayalım.
- C2 hücresine aşağıdaki formülü girin:
=EĞER(EĞERSAY($B$2:$B$500; A2)=0; "İkinci listede yok"; "Bulundu")
```
*Dolar işaretlerine `$` dikkat edin — bunlar arama aralığını sabitler.*
3. Formülü Liste A'nın sonuna kadar aşağı doğru sürükleyin.
4. C sütununu "İkinci listede yok" değerine göre filtreleyin.
İpucu: Her iki listedeki benzersiz değerleri aynı anda bulmak için, aralıkları yer değiştirerek bu mantığı Liste B için bitişik bir sütunda çoğaltın: =EĞERSAY($A$2:$A$500; B2).
Yöntem 2: DÜŞEYARA İşlevi (Klasik Yaklaşım)
DÜŞEYARA (VLOOKUP) işlevi tam eşleşmeyi bulmaya çalışır. Değer bulunamazsa, filtreleme için kullanışlı olan #YOK hatasını döndürür.
Eksik değerleri arama formülü:
=EĞERHATA(DÜŞEYARA(A2; $B$2:$B$500; 1; 0); "Eksik")
- Formül değerin kendisini döndürürse — öğe her iki listede de vardır.
- "Eksik" döndürürse — öğe ikinci listede yoktur.
Modern Excel sürümleri (Office 365, 2021+) için XLOOKUP kullanmak daha iyidir, çünkü daha hızlı çalışır ve sütun numarası belirtmeyi gerektirmez:
=EĞERHATA(XLOOKUP(A2; $B$2:$B$500; $B$2:$B$500); "Eksik")
Yöntem 3: Koşullu Biçimlendirme ile Görsel Vurgulama
Formüllü ek sütunlara ihtiyacınız yoksa ve farklılıkları sadece renkle vurgulamak istiyorsanız.
- İlk listenin aralığını seçin (örneğin,
A2:A100). - Giriş sekmesinde Koşullu Biçimlendirme → Yeni Kural seçeneğini belirleyin.
- Kural türü olarak "Biçimlendirilecek hücreleri belirlemek için formül kullan" seçeneğini seçin.
- Formülü girin:
=EĞERSAY($B$2:$B$100; A2)=0
```
5. **Biçim** düğmesine tıklayın, dolgu rengi olarak kırmızıyı seçin ve Tamam'a basın.
Artık Liste B'de bulunmayan Liste A'daki tüm hücreler kırmızı renkle boyanacaktır. Benzersiz öğeleri orada görmek için Liste B için işlemi tekrarlayın.
## Yöntem 4: Büyük Veri Dizileri İçin Power Query
On binlerce satırınız varsa veya görevi düzenli olarak gerçekleştirmeniz gerekiyorsa, formüller dosyanın çalışma hızını yavaşlatabilir. Power Query eklentisini kullanın (Excel 2016+ sürümlerinde dahili olarak gelir).
**Eylem algoritması:**
1. Her bir listeyi seçin ve **Veri** → **Tablo/Aralıktan** seçeneğine tıklayın.
2. Power Query düzenleyicisinde ilk listenin sorgusunu seçin, ardından **Giriş** sekmesinde **Sorguları Birleştir** düğmesine tıklayın.
3. İkinci listeyi seçin.
4. Birleştirme penceresinde birleştirme türünü seçin:
* **Sol Anti-Birleştirme (Left Anti):** Sadece ilk listedeki satırları gösterir (farklılıklar).
* **Tam Dış Birleştirme (Full Outer):** Tüm satırları gösterir ve eşleşme sütunu eşleşmelerin nerede olduğunu ve nerede olmadığını belirtir.
5. **Kapat ve Yükle** düğmesine tıklayın. Sonuç yeni bir sayfada görünecektir.
Önemli: Formüller kullanırken aralıkları her zaman mutlak başvurularla ($ işareti veya F4 tuşu ile) sabitleyin. Aksi takdirde, formülü sürüklerken aralık "kayar" ve karşılaştırma hatalı hale gelir.
Yöntemlerin Karşılaştırılması: Hangisini Seçmeli?
| Durum | Önerilen Yöntem | Avantajlar | Dezavantajlar |
|---|---|---|---|
| Hızlı tek seferlik kontrol | EĞERSAY | Basit, anlaşılır, her yerde çalışır | Ek sütun gerektirir |
| Görselleştirme gerekli | Koşullu Biçimlendirme | Açıklayıcı, yapıyı değiştirmez | Kuralları düzenlemek daha zordur |
| Office 365 / Yeni Excel | XLOOKUP | DÜŞEYARA'dan daha hızlı, daha esnek sözdizimi | Eski sürümlerde çalışmaz |
| Binlerce satır / Düzenlilik | Power Query | Dosyayı yavaşlatmaz, otomatik güncelleme | Arayüzün öğrenilmesini gerektirir |
Karşılaştırma Sırasında Yapılan Yaygın Hatalar
- "Hayalet" boşluklar: Hücre boş veya aynı görünür, ancak formül tersini söyler. Bu genellikle metnin sonundaki bir boşluktur. Çözüm:
KIRPişlevi. - Sayı mı Metin mi: Bir listede
100(sayı), diğerinde'100(metin) vardır. Çözüm: Her şeyiMETNEÇEVİR()işleviyle metne dönüştürmek veya "Metni Sütunlara Dönüştür" kullanmak. - Yanlış aralık: Aralığı
$işaretleriyle sabitlemeyi unuttunuz. Formülü kopyaladığınızda, değerleri kaymış hücrelerde aramaya başlar. - Liste içindeki yinelenenler:
EĞERSAYişlevi oluşum sayısını sayar. İkinci listede değer iki kez geçerse, formül yine de doğru çalışır (sonuç > 0 olur), ancak yinelenenleri analiz etmek için özet tablolar kullanmak daha iyidir.
SSS
İki listeyi nasıl karşılaştırır ve sadece ortak değerleri bırakırım?
EĞERSAY formülünü uyguladıktan sonra filtreyi kullanın. Sonucun 0'dan büyük olduğu (veya durumun "Bulundu" olduğu) satırları bırakın ve diğerlerini silin.
Listeleri harf büyüklüğüne duyarlı olarak karşılaştırmak mümkün mü?
Standart işlevler (DÜŞEYARA, EĞERSAY) harf büyüklüğünü yoksayar. Harf büyüklüğüne duyarlı karşılaştırma için TAM (EXACT) işlevi içeren bir dizi formülü kullanın: =TOPLA.ÇARPIM(--TAM(A2; $B$2:$B$100))>0.
Listeler farklı sayfalardaysa ne yapmalıyım?
Prensip aynıdır. Formülde aralıktan önce sayfa adını belirtmeniz yeterlidir, örneğin: =EĞERSAY(Sayfa2!$B$2:$B$100; A2).