Skip to main content

Excel'de birden fazla eşleşen değeri aramak (vlookup) ve birleştirmek nasıl yapılır?

Author: Xiaoyang Last Modified: 2025-08-07

Excel'de VLOOKUP kullanırken, işlev genellikle belirli bir arama kriteri için bulduğu ilk eşleşen değeri döndürür. Ancak, bir sınıftaki tüm öğrencileri listelemek veya belirli bir kategoriye ait tüm ürünleri listelemek gibi, belirli bir anahtarla ilişkili tüm eşleşen değerleri almanız ve birleştirmeniz gereken birçok yaygın senaryo vardır. Standart VLOOKUP işlevi bu konuda sınırlı olduğundan, hem arama yapmak hem de birden fazla eşleşen sonucu tek bir hücrede birleştirmek için nasıl bir çözüm bulunabileceğini merak edebilirsiniz. Aşağıda, farklı Excel sürümleri ve kullanıcı tercihlerine uygun olarak bu görevi gerçekleştirmek için çeşitli pratik ve verimli yöntemler ele alınacaktır.


TEXTJOIN ve FILTER İşlevleri ile Birden Fazla Eşleşen Değeri Ara ve Birleştir

Excel 365 veya Excel 2021 kullanıyorsanız, TEXTJOIN ve FILTER işlevlerinin kombinasyonu, tüm eşleşen değerleri aramak ve birleştirmek için etkili, formül tabanlı bir yaklaşım sunar. Bu çözüm özellikle dinamik ve güncellenen veri setleri için uygundur, çünkü kaynak veriler değiştiğinde sonuç otomatik olarak yenilenir. En iyi şekilde, FILTER fonksiyonunu destekleyen Excel sürümlerinde uygulanır; bu özellik yalnızca son Office sürümlerinde mevcuttur.

Hedef hücreye aşağıdaki formülü girin, ardından formülü diğer satırlara da uygulamak istiyorsanız aşağı doğru sürükleyin. Tüm eşleşen değerler çıkarılır ve tek bir hücrede birleştirilir. Ekran görüntüsüne bakın:

=TEXTJOIN(", ", TRUE, FILTER($B$2:$B$16, $A$2:$A$16=D2, ""))

vlookup and concatenate multiple values with TEXTJOIN and FILTER Functions

Bu formülün açıklaması:
  1. FILTER($B$2:$B$16, $A$2:$A$16=D2, ""): Formülün bu kısmı, $A$2:$A$16'daki her değeri kontrol eder; eğer D2'deki değere eşitse, $B$2:$B$16'daki karşılık gelen değer sonuç dizisine dahil edilir.
    • $B$2:$B$16: Eşleşen değerlerin alınacağı aralık.
    • $A$2:$A$16=D2: Değerlerin seçildiği koşul — yalnızca $A$2:$A$16'nın D2'deki içerikle eşleştiği satırlar işlenir.
  2. TEXTJOIN(", ", TRUE, ...): Bu işlev, FILTER işlevinin çıktısını (eşleşen öğeler dizisi) alır ve bunları belirtilen ayırıcı (virgül ve boşluk) ile tek bir metin dizisinde birleştirirken boş girişleri otomatik olarak yoksayar.
    • ", ": Virgül ve boşluğu ayırıcı olarak ayarlar; bu sembolü gereksinime göre değiştirebilirsiniz, örneğin noktalı virgül veya satır sonu kullanabilirsiniz.
    • TRUE: Birleştirme işlemi sırasında boş hücrelerin görmezden gelinmesini sağlar, böylece düzgün biçimlendirilmiş bir çıktı elde edersiniz.

Özel Not: Bu yöntem Excel 365 veya 2021 gerektirir ve eski sürümlerde (örneğin Excel 2019, 2016 veya daha eski) çalışmaz. Uygulamadan önce Excel sürümünüzü kontrol edin.

İpucu: Arama değerinizi (örneğin, D2) değiştirirseniz veya veri aralığına ek eşleşen öğeler eklerseniz, sonuç ekstra adımlara gerek kalmadan otomatik olarak güncellenir.

Potansiyel sınırlamalar: Çok büyük veri setlerinde formül hesaplama süresi artabilir. Ayrıca, kullanıcıların arama veya sonuç aralıklarında birleştirilmiş hücreler olmadığından emin olması gerekir, çünkü bunlar formül hatalarına neden olabilir.


Kutools for Excel ile birden fazla eşleşen değeri ara ve birleştir

Yerleşik formül yöntemlerini zor buluyorsanız veya Excel sürümünüz TEXTJOIN ve FILTER gibi gelişmiş işlevleri desteklemiyorsa, Kutools for Excel kullanıcı dostu bir grafiksel çözüm sunar. Kutools'un Birçoklu Arama özelliği, birkaç adımda birden fazla eşleşen sonucu aramanıza ve birleştirmenize olanak tanır; bu hem başlangıç seviyesindeki hem de ileri düzeydeki kullanıcılar için uygundur. Kutools ile karmaşık formüller veya kodlar yazmanıza gerek yoktur ve özellikle tekrarlayan aramalar ve toplamalar gerektiren büyük veya değişken veri setleriyle çalışırken elverişlidir.

Kutools for Excel, karmaşık görevleri basitleştirmek için 300'den fazla gelişmiş özellik sunar ve yaratıcılığı ve verimliliği artırır. Yapay zeka yetenekleriyle entegre olarak, Kutools görevleri hassas bir şekilde otomatikleştirir ve veri yönetimi işlerini kolaylaştırır. Kutools for Excel hakkında detaylı bilgi...  Ücretsiz deneme...

Kutools for Excel'i yükledikten sonra aşağıdaki adımları izleyin:

Kutools > Süper ARA > Birçoklu arama (birden fazla sonuç döndürme) öğesine tıklayarak kurulum iletişim kutusunu açın. Bu iletişim kutusu içinde, aşağıdaki adımları kullanarak arama ve çıktı ayarlarınızı hızlıca yapılandırabilirsiniz:

  1. Birleştirilmiş sonuçlar için hedef çıktı hücrelerini ve aramak istediğiniz değerleri içeren hücreleri seçin;
  2. Arama anahtarı ve sonuç sütunlarını içeren tablo aralığını belirtin;
  3. Hangi sütunun arama anahtarlarını içerdiğini (Anahtar Sütun) ve hangi sütunun değerlerinin birleştirileceğini (Dönüş Sütunu) belirtin;
  4. Ayarlarınızı onaylamak ve verileri işlemek için Tamam düğmesine tıklayın.
     specify the options in the dialog box

Sonuç: Kutools, seçtiğiniz çıktı hücresinde tüm eşleşen ve birleştirilmiş değerleri görüntüleyecektir. Ekran görüntüsüne bakın:
concatenated based on the criteria by kutools

Bu yöntem, karmaşık formüller veya kodlar olmadan doğrudan Excel arabiriminden çalışmayı tercih edenler için oldukça tavsiye edilir. Ayrıca, formül hatalarının olasılığını azaltır ve tekrarlayan arama ve birleştirme görevlerinde üretkenliği artırır.


Kullanıcı Tanımlı İşlev ile birden fazla eşleşen değeri ara ve birleştir

VBA (Visual Basic for Applications) ile yetkin olan veya dinamik dizi veya FILTER işlev desteği olmayan eski Excel sürümlerini kullanan kullanıcılar için, esnek bir çoklu sonuç birleştirme özelliği sağlayan özel bir Kullanıcı Tanımlı İşlev (UDF) oluşturabilirsiniz. Bu yöntem tüm Excel sürümleriyle tamamen uyumludur ve belirli ayırıcı semboller veya koşullara göre özelleştirilebilir.

1. ALT + F11 tuşlarına basılı tutarak Microsoft Visual Basic for Applications penceresini açın.

2. Ekle > Modül'e tıklayın ve aşağıdaki kodu Modül Penceresine yapıştırın.

VBA kodu: Bir hücrede birden fazla eşleşen değeri ara ve birleştir

Function ConcatenateMatches(LookupValue As String, LookupRange As Range, ReturnRange As Range, Optional Delimiter As String = ", ") As String
'Updateby Extendoffice
    Dim Cell As Range
    Dim Result As String
    Result = ""
    For Each Cell In LookupRange
        If Cell.Value = LookupValue Then
            Result = Result & Cell.Offset(0, ReturnRange.Column - LookupRange.Column).Value & Delimiter
        End If
    Next Cell
    If Result <> "" Then
        Result = Left(Result, Len(Result) - Len(Delimiter))
    End If
    ConcatenateMatches = Result
End Function

3. VBA düzenleyicisini kaydedip kapatın. Çalışma sayfanıza dönün ve bu UDF'yi şu formülü kullanarak uygulayın: =ConcatenateMatches(D2, $A$2:$A$16, $B$2:$B$16) , istediğiniz sonucu almak istediğiniz boş bir hücreye girin. Gerekirse formülü diğer hücrelere kopyalamak için doldurma tutamacını aşağı doğru sürükleyin. Belirli bir arama değerine dayalı olarak tüm eşleşen değerler döndürülür ve virgül ve boşlukla ayrılmış tek bir hücrede birleştirilir. Ekran görüntüsüne bakın:

concatenated based on the criteria by vba

Bu formülün açıklaması:
  • D2: Veri setinizde (LookupValue) eşleşecek arama değeri.
  • A2:A16: İşlevin arama değerini aradığı aralık (LookupRange).
  • B2:B16: Arama değeri eşleştiğinde birleştirilecek değerleri içeren aralık (ReturnRange).

VBA kodu ile birden fazla eşleşen değeri ara ve birleştir

Tekrarlayan kullanım gerektiren senaryolar için veya çalışma sayfası hücrelerinde özel işlevlerden kaçınmak isteyenler için, sonuçları doğrudan birleştirmek üzere hazır bir VBA makrosu kullanabilirsiniz. Bu yöntem, tüm kullanıcıların aynı sürüm veya eklentilere sahip olmadığı ortak ortamlarda iyi çalışır.

1. Geliştirici Araçları > Visual Basic'e tıklayarak VBA düzenleyicisini açın.

2. VBA penceresinde Ekle > Modül'e tıklayın, ardından bu kodu modüle yapıştırın:

Sub VLookupAndConcatenate()
    Dim ws As Worksheet
    Dim dataRange As Range, lookupRange As Range, resultRange As Range
    Dim dict As Object
    Dim i As Long, lastRow As Long
    Dim lookupValue As Variant, result As String
    Dim delimiter As String
    delimiter = ", "
    Set dict = CreateObject("Scripting.Dictionary")
    Set ws = ActiveSheet
    On Error Resume Next
    Set dataRange = Application.InputBox( _
        Prompt:="Please select the data range (contains lookup column and result column)", _
        Title:="Select Data Range", _
        Type:=8)
    On Error GoTo 0
    If dataRange Is Nothing Then Exit Sub
    On Error Resume Next
    Set lookupRange = Application.InputBox( _
        Prompt:="Please select the lookup range (single column)", _
        Title:="Select Lookup Range", _
        Type:=8)
    On Error GoTo 0
    If lookupRange Is Nothing Then Exit Sub
    On Error Resume Next
    Set resultRange = Application.InputBox( _
        Prompt:="Please select the starting cell for results output", _
        Title:="Select Output Location", _
        Type:=8)
    On Error GoTo 0
    If resultRange Is Nothing Then Exit Sub
    resultRange.Resize(lookupRange.Rows.Count, 1).ClearContents
    For i = 1 To dataRange.Rows.Count
        lookupValue = dataRange.Cells(i, 1).Value
        If Not dict.Exists(lookupValue) Then
            dict.Add lookupValue, dataRange.Cells(i, 2).Value
        Else
            dict(lookupValue) = dict(lookupValue) & delimiter & dataRange.Cells(i, 2).Value
        End If
    Next i
    For i = 1 To lookupRange.Rows.Count
        lookupValue = lookupRange.Cells(i, 1).Value
        If dict.Exists(lookupValue) Then
            resultRange.Cells(i, 1).Value = dict(lookupValue)
        Else
            resultRange.Cells(i, 1).Value = "Not Found"
        End If
    Next i
    MsgBox "Operation completed! Processed " & lookupRange.Rows.Count & " lookup values.", vbInformation
End Sub

3. Tıklayın Run button düğmesine basarak makroyu çalıştırın. Giriş kutuları, veri aralığınızı, arama aralığınızı ve sonuç aralığınızı seçmenizi isteyecektir. Birleştirilmiş sonuç daha sonra seçilen çıktı hücrelerinde doğrudan görüntülenir.

Bu makro yaklaşımı, özellikle farklı değerlerle çoklu birleştirme aramaları sıkça gerçekleştirdiğiniz durumlarda faydalıdır, çünkü çalışma sayfasını UDF çağrılarıyla karıştırmaktan kaçınır.

Gerektiğinde kodda ayırıcıyı kolayca ayarlayabilir ve makroyu iş akışınıza göre sonuçları bir hücreye veya dosyaya çıkarmak için genişletebilirsiniz.

Excel'de birden fazla eşleşen değeri birleştirmek, durumunuza bağlı olarak belirli avantajlara sahip çeşitli yaklaşımlar kullanılarak mümkündür. Dinamik dizi formülleri, Kutools for Excel gibi eklentiler veya VBA tabanlı yöntemler arasından seçim yaparak gruplandırılmış verileri analiz etme ve görüntüleme yeteneğinizi geliştireceksiniz. Veri setinizin boyutuna ve karmaşıklığına bağlı olarak, kendiniz veya takımınız için en uygun performansı ve bakım kolaylığını sağlayan yaklaşımı değerlendirin. Günlük işlemlerde, veri tutarlılığını kontrol edin, birleştirilmiş hücrelerden kaçının ve en iyi sonuçlar için referans aralıklarını doğrulayın. Formül hesaplamalarında hata karşılaşırsanız, aralıkların verilerle eşleştiğinden ve Excel sürümünüz için doğru formül giriş yöntemini kullandığınızdan emin olun.

Daha gelişmiş Excel teknikleri ve çeşitli pratik nasıl yapılır kılavuzları için kapsamlı eğitim kütüphanemizi ziyaret edin.

En İyi Ofis Verimlilik Araçları

🤖 Kutools AI Asistanı: Veriye dayalı analizi devrimsel olarak değiştirin: Akıllı Yürütme |Kod Oluştur |Özel Formüller Oluştur |Verileri Analiz Edin ve Grafikler Oluşturun |Geliştirilmiş İşlevler’i çağırın
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya İşaretle | Boş Satırları Sil | Sütunları veya Hücreleri Verileri Kaybetmeden Birleştir | Formül Olmadan Yuvarla...
Süper ARA: Çoklu Kriter VLookup | Çoklu Değer VLookup | Çoklu sayfa araması | Bulanık Eşleme....
Gelişmiş Açılır Liste: Hızlıca Açılır Liste Oluşturun | Bağımlı Açılır Liste | Çoklu Seçimli Açılır Liste....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekle | Sütunları Taşı | Gizli Sütunların Görünürlük Durumunu Değiştir | Aralıkları & Sütunları Karşılaştır...
Özel Seçilen Özellikler: Izgara Odaklama | Tasarım Görünümü | Gelişmiş formül çubuğu | Çalışma Kitabı & Çalışma Sayfası Yöneticisi | Otomatik Metin Kütüphanesi | Tarih Seçici | Veri Birleştir | Hücreleri Şifrele/Şifre Çöz | Listeye Göre E-posta Gönder | Süper Filtre | Özel Filtre (kalın/italik/üstü çizili filtreleme...)...
En Gözde15 Araç Seti:12 Metin Aracı (Metin Ekle, Belirli Karakterleri Sil, ...) | 50+ Grafik Türü (Gantt Grafiği, ...) | 40+ Pratik Formül (Doğum tarihine dayanarak yaş hesapla, ...) | 19 Ekleme Aracı (QR Kodu Ekle, Yoldan Resim Ekle, ...) | 12 Dönüşüm Aracı (Kelimeye Dönüştür, Para Birimi Dönüştürme, ...) | 7 Birleştir & Böl Araçları (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...) | ... ve daha fazlası
Kutools’u tercih ettiğiniz dilde kullanın – İngilizce, İspanyolca, Almanca, Fransızca, Çince ve40’tan fazla başka dili destekler!

Kutools for Excel ile Excel becerilerinizi güçlendirin, daha önce hiç yaşamadığınız bir verimlilik deneyimini yaşayın. Kutools for Excel, üretkenliğinizi artıracak ve zamanı kaydetmenizi sağlayacak300’den fazla gelişmiş özellik sunar. En çok ihtiyaç duyduğunuz özelliği almak için buraya tıklayın...


Office Tab, Office’e sekmeli arayüz kazandırır ve işinizi çok daha kolaylaştırır

  • Word, Excel, PowerPoint’te sekmeli düzenleme ve okuma işlevini etkinleştirin.
  • Aynı pencere içerisinde yeni sekmelerde birden fazla belge açın veya oluşturun, yeni pencerelerde açmak yerine.
  • Verimliliğinizi %50 artırın, her gün yüzlerce fare tıklamasını sizin için azaltın!