Farklı Kaynaklardan Veri Birleştirme Yöntemleri
Excel'de iki tabloyu birleştirmek için program sürümüne ve görevin karmaşıklığına bağlı olarak bir yöntem seçin: Tek bir anahtara göre hızlıca veri çekmek için XLOOKUP (XLOOKUP) veya VLOOKUP (DÜŞEYARA) işlevini kullanın; birden fazla koşula göre büyük veri kümelerini otomatik olarak birleştirmek için ise Power Query aracını tercih edin. Formüller tek seferlik işlemler için uygundur, Power Query eklentisi ise düzenli raporlama için idealdir.
Kısa cevap: Excel'in modern sürümleri (Office 365, 2021+) için =XLOOKUP(anahtar; arama_sütunu; dönüş_sütunu) kullanın. Eski sürümler için — =VLOOKUP(...). Binlerce satırı düzenli olarak birleştirmeniz gerekiyorsa "Veri" sekmesi → "Veri Al" yolunu izleyin.
Yöntem Seçimi: Formüller mi Power Query mi?
Çalışmaya başlamadan önce birleştirme amacınızı belirleyin:
- Tek seferlik ekleme: Mevcut listeye tek bir sütun (örneğin fiyat veya telefon) eklemeniz mi gerekiyor? Formülleri kullanın.
- Düzenli raporlama: Veriler günlük olarak güncelleniyor ve tablolar farklı yapıda mı? Power Query'yi kullanın.
- Karmaşık koşullar: Satırları aynı anda iki veya daha fazla sütuna göre eşleştirmeniz mi gerekiyor (örneğin "Ürün" + "Tarih")? Power Query veya dizi formülü daha uygun olacaktır.
VLOOKUP ve XLOOKUP İşlevleriyle Birleştirme
Bu, küçük tablolar için en hızlı yoldur. Yöntemin özü: İlk tabloda bir değer bulmak ve ikinci tablodan ilgili verileri yerleştirmektir.
XLOOKUP (XLOOKUP) Kullanımı
İşlev Excel 2021 ve Office 365'te mevcuttur. Evrenseldir: hem solda hem sağda arama yapabilir, sütun eklendiğinde bozulmaz ve okunması daha kolaydır.
Sözdizimi:
=XLOOKUP(aranan_değer; arama_aralığı; dönüş_aralığı; [bulunamazsa])
Örnek:
Satış tablonuz var (A sütunu — Müşteri ID'si) ve müşteri rehberiniz var (D sütunları — ID, E — E-posta). E-postayı satış tablosuna çekmeniz gerekiyor.
B2 hücresindeki formül:
=XLOOKUP(A2; $D$2:$D$100; $E$2:$E$100; "Müşteri bulunamadı")
VLOOKUP (DÜŞEYARA) Kullanımı
Excel'in eski sürümleri için klasik yöntem. Kurala sıkı sıkıya uyulmasını gerektirir: arama anahtarı kaynak tablo aralığının ilk (sol) sütununda bulunmalıdır.
Sözdizimi:
=VLOOKUP(aranan_değer; tablo; sütun_numarası; [aralık_araması])
Örnek:
=VLOOKUP(A2; $D$2:$F$100; 2; 0)
Burada 0 (veya YANLIŞ) tam eşleşme anlamına gelir. Bu son derece önemlidir, aksi takdirde formül yanlış veriler döndürebilir.
Sık yapılan hata: Formülü aşağı kopyalarken tablo aralığını dolar işaretleriyle ($) sabitlemeyi unutmak. Aralığın kaymaması için her zaman mutlak referanslar kullanın (örneğin $A$2:$C$500).
Birden Fazla Anahtara Göre Birleştirme
Bazen tek bir tanımlayıcı yeterli olmaz. Örneğin, fiyatlar sadece ürün koduna değil, bölgeye de bağlıdır.
Yöntem 1: Dizi Formülü (INDEX + MATCH)
XLOOKUP'ınız yoksa, koşulları çarparak INDEX ve MATCH kombinasyonunu kullanabilirsiniz.
Formül (eski sürümlerde Ctrl+Shift+Enter ile girilir):
=INDEX(Dönüş_Sütunu; MATCH(1; (Anahtar1_tablo1=Anahtar1_tablo2)*(Anahtar2_tablo1=Anahtar2_tablo2); 0))
Yöntem 2: Yardımcı Anahtar Oluşturma
Herhangi bir sürüm için en güvenilir yöntem:
- Her iki tabloya da yeni bir gizli sütun ekleyin.
- İçinde anahtarları birleştirin:
=A2 & "|" & B2(burada A ve B eşleşme koşullarıdır). Ayırıcı, "11" ile "1" + "1" gibi hatalardan kaçınmak için gereklidir. - Bu yeni benzersiz anahtara göre normal VLOOKUP veya XLOOKUP kullanın.
Power Query ile Otomasyon
Büyük veri hacimleri (binlerce satır) ve tekrarlayan görevler için formüller dosyayı yavaşlatabilir. Power Query eklentisi ("Veri" sekmesi) bu sorunu profesyonelce çözer.
Adım adım talimatlar:
- Aralıklarınızı "Akıllı Tablolara" dönüştürün (Ctrl+T).
- Veri sekmesine gidin → Veri Al → Diğer Kaynaklardan → Tablo/Aralıktan. Sorgu düzenleyicisi açılacaktır.
- İkinci tablo için işlemi tekrarlayın.
- Düzenleyicide ilk tabloyu seçin, Sorguları Birleştir (Merge Queries) düğmesine tıklayın.
- Her iki tablodaki anahtar sütunları fareyle vurgulayın (Ctrl tuşuna basılı tutarak birden fazlasını seçebilirsiniz).
- Birleştirme türünü seçin:
- Left Outer (Sol Dış): İlk tablodaki tüm satırları bırakır, ikinci tablodan verileri çeker (VLOOKUP benzeri).
- Inner (İç): Sadece anahtarların her iki tabloda da bulunduğu satırları bırakır.
- Tamam'a tıklayın. "Table" kelimesini içeren yeni bir sütun görünecektir. Sütun başlığındaki genişletme simgesine tıklayın ve eklemek istediğiniz alanları seçin.
- Kapat ve Yükle düğmesine tıklayın.
Power Query'nin en büyük avantajı yeniden üretilebilirliktir. Gelecek ay için yeni veriler geldiğinde, bunları kaynak tabloya ekleyin ve Veri sekmesindeki "Yenile" düğmesine basın. Tüm formüller otomatik olarak yeniden hesaplanacaktır.
Yinelenenleri Giderme ve Veri Temizleme
Birleştirmeden sonra, analizden önce kaldırılması gereken yapay hatalar ortaya çıkabilir.
| Sorun | Çözüm |
|---|---|
| Gereksiz boşluklar | =TRIM() (KIRP) işlevini veya Power Query'deki "Sütunlara Böl" aracını kullanın. |
| Farklı format | Anahtarların aynı tipe sahip olduğundan emin olun (sayı veya metin). VLOOKUP'ta 100 sayısı ve "100" metni eşleşmez. |
| Satır tekrarları | İkinci tabloda anahtar benzersiz değilse, VLOOKUP ilk karşılaştığı değeri döndürür, Power Query'deki birleştirme ise Kartezyen çarpım oluşturur (satırlar çoğalır). Kaynaktaki yinelenenleri önceden silin. |
| #YOK hataları | Tablonun düzgün görünmesi için formülü =IFERROR(...; "Veri yok") içine alın. |
Birleştirme Sırasında Sık Yapılan Hatalar
- Veri tipi uyuşmazlığı: Bir tablo kodları sayı olarak, diğeri metin olarak saklıyor.
- Çözüm: TEXT() işlevi veya hücre formatı dönüştürme yoluyla tek bir biçime getirin.
- Gizli karakterler: Veriler 1C veya web sitesinden dışa aktarılmış ve yazdırılamayan karakterler içeriyor.
- Çözüm: Birleştirmeden önce CLEAN() (TEMİZLE) işlevini kullanın.
- Göreli referanslar: Formüldeki aralık sürüklenirken kaymış.
- Çözüm: Arama aralığını her zaman
$işaretiyle sabitleyin.
- Çözüm: Arama aralığını her zaman
Sıkça Sorulan Sorular (SSS)
Farklı dosyalardaki tablolar birleştirilebilir mi? Evet. Formüllerde dosya yolunu belirtmeniz gerekir (örneğin `[Bütçe.xlsx]Sayfa1!$A:$B). Power Query'de bu, "Veri Al" → "Dosyadan" yoluyla yapılır.
VLOOKUP #YOK hatası döndürürse ne yapılmalı? İkinci tabloda aranan değerin varlığını kontrol edin. Gereksiz boşluk olmadığından ve veri tiplerinin eşleştiğinden emin olun. Ayrıca formülün son argümanının "0" (tam eşleşme) olup olmadığını kontrol edin.
50.000 satır için hangi yöntem daha hızlı? Dizi formülleri ve çok sayıda VLOOKUP çalışma kitabının yeniden hesaplanmasını ciddi şekilde yavaşlatabilir. Bu hacim için Power Query kullanılması şiddetle tavsiye edilir.