Kurs
Bu makalede, Excel’in MATCH() işlevini Excel’in diğer arama işlevlerinden ayıran özellikleri göstereceğim.
MATCH()’i benzersiz kılan, gerçek değerleri döndüren VLOOKUP() veya HLOOKUP()’tan farklı olarak, MATCH()’in bize bir değerin konumunu vermesidir; bu da pek çok durumda son derece kullanışlı olabilir — haydi nasıl olduğuna bakalım.
Hızlı Yanıt
MATCH() işlevini kullanarak bir değerin konumunu bulmak için:
-
Sonucu görmek istediğiniz boş bir hücreyi tıklayın
-
=MATCH(yazın -
Aranan değeri tırnak içinde yazın
-
lookup_arrayaralığını seçin. -
Eşleştirme türünü girin (tam eşleşme için
0) ve Enter’a basın.
Örneğin A2:B6 aralığında meyveler ve satışlarından oluşan bir listem var ve bu listede Portakal’ın konumunu bulmak istiyorum. Bunun için aşağıdaki formülü yazıp Enter’a basıyorum:
=MATCH(“Orange”, A2:A6, 0)
Bu, 4 görüntüler; çünkü Orange listedeki dördüncü meyvedir.

MATCH() işlevini kullanın. Görsel: Yazar.
Excel MATCH()’i Anlamak
MATCH()’i kullanmanın birden fazla yolu vardır ve nasıl kullandığımız, ondan ne elde edeceğimizi değiştirir. Sizin için en uygununun hangisi olduğuna karar verebilmeniz için bunu biraz daha ayrıntılı inceleyelim.
MATCH() işlevi nedir?
Excel’de MATCH() işlevi bir listenin içinde bir değerin konumunu döndürür. Gerçek değeri vermek yerine, o değerin nerede bulunduğunu söyler. Özellikle dinamik aramalarda, değerin kendisinden çok konumunu bilmemiz gerektiğinde en iyi sonucu verir.
MATCH() işlevinin sözdizimi
MATCH()’in sözdizimi şöyledir:
MATCH(lookup_value, lookup_array, [match_type])
Burada:
-
lookup_value,lookup_arrayiçinde aradığımız değerdir. -
lookup_array, bu değerin arandığı listedir. -
match_type(isteğe bağlı) aramanın nasıl yapılacağını belirtir.1(varsayılan),lookup_value’dan küçük ya da ona eşit olan en büyük değeri döndürür (liste artan düzende sıralanmış olmalıdır).0tam eşleşme döndürür.-1ise aradığınız değerden büyük ya da ona eşit olan en küçük değeri döndürür (liste azalan düzende sıralanmış olmalıdır).
MATCH() işlevi hakkında bilinmesi gerekenler
MATCH() işlevini kullanmadan önce bilinmeye değer birkaç küçük nokta var. Hatalardan kaçınmanıza ve işleri biraz daha kolaylaştırmanıza yardımcı olurlar:
-
MATCH()büyük/küçük harf duyarlı değildir; yani apple, Apple ve APPLE aynı kabul edilir. -
Metinle çalışıp
match_type’ı0yaparsak, birden çok karakteri temsil eden*ve tek bir karakteri temsil eden?gibi joker karakterleri kullanabiliriz. -
MATCH()aradığımız değeri bulamazsa bir#N/Ahatası döndürür.
Excel MATCH() Kullanımına Temel Örnekler
Artık MATCH() işlevinin ne olduğunu ve nasıl çalıştığını bildiğimize göre, birkaç örnekle nasıl kullanabileceğimize bakalım:
Örnek 1: Bir sayının konumunu bulma
Diyelim ki A2:A7 hücrelerinde bir sayı aralığım var ve listedeki 40 sayısının konumunu bulmak istiyorum. Bunun için MATCH() işlevini şöyle kullanabilirim:
=MATCH(40, A2:A7, 0)
Ya da aranan değer için bir hücre başvurusu da kullanabilirim.
=MATCH(D1, A2:A7, 0)
Soldaki Excel başlığında 40 sayısının 6. satırda olduğunu görürsünüz. Ancak sonuç 5 gösterir. Bunun nedeni saymaya A2’den başlamamızdır. Dolayısıyla Excel oradan saydığında bize 6 yerine 5 verir.

MATCH() işlevini kullanarak bir sayının konumunu bulun. Görsel: Yazar.
Örnek 2: Bir metin değerinin konumunu bulma
A2:A7 hücresinde Oyuncular, B2:B7 hücresinde artan düzende sıralanmış Puanlar listem var ve Emily adlı oyuncunun konumunu bulmak istiyorum. Bunun için formülüm şöyle görünüyor:
=MATCH(E1,A2:A6, 0)
Bu formül D1 hücresindeki değeri A2:A7 aralığında arar ve Emily listedeki üçüncü oyuncu olduğu için 3 döndürür.

MATCH() işlevini kullanarak bir metnin konumunu bulun. Görsel: Yazar.
Excel’de Bulanık Eşleştirme ve Joker Karakter Eşleştirme
Bazen çalıştığımız veriler kusursuz değildir — yazım hataları, farklı yazımlar veya dağınık biçimler olabilir. Böyle durumlarda, bulanık ve joker karakter eşleştirme işleri düzene sokmaya yardımcı olabilir.
Bulanık eşleştirme
Bulanık eşleştirme, farklı listelerdeki birbirine benzer ama tam olarak aynı olmayan kayıtları bulur. Bu, Frank ile Feank gibi küçük farklılıklar veya yazım hataları olduğunda kullanışlıdır.
İki veri kümem var: Müşteri Sipariş listesi ve Sadakat Programı Üyeleri. Yazım hataları, takma adlar veya biçim farkları olsa bile hangi müşterilerin Siparişleri zaten Sadakat Programı’nda yer alıyor kontrol etmek istiyorum. Burada isimler birebir uyuşmadığı için VLOOKUP() işe yaramaz.
Adım 1: Verileri tablolara dönüştürün
-
Müşteri Siparişleri’ni seçin,
Ctrl + Ttuşlarına basın. -
Sadakat Programı Üyeleri’ni seçin,
Ctrl + Ttuşlarına basın.
İki tablo arasında ayrı kalmaları için boşluk olduğundan emin olun.
Adım 2: Verileri Power Query’e yükleyin
- Müşteri Siparişleri içinde herhangi bir yere tıklayın ve adını Orders_Table olarak belirleyin.
- Veri > Veri Al > Tablodan/Aralıktan yolunu izleyin.
- Power Query’e yüklemek için Kapat & Yükle’yi tıklayın.
- Sadakat Programı Üyeleri için 1-3. adımları tekrarlayın ve adını Loyalty_Table olarak belirleyin; ancak bu kez Kapat & Şuraya Yükle seçeneğini belirleyin ve aynı Excel sayfasına yükleyin.
Artık her iki tablo da Power Query’e yüklendi.

Tabloları Power Query’e yükleyin. Görsel: Yazar.
Adım 3: Tabloları bulanık eşleştirmeyle birleştirin
- Veri > Veri Al > Sorguları Birleştir > Sorguları Birleştir yolunu izleyin.
- Birleştir penceresinde ilk tabloyu (Orders_Table) ve ikinci tabloyu (Loyalty_Table) seçin
- Her iki tabloda da Müşteri Adı sütununu seçin.
- Bulanık Eşleştirme Kullan kutusunu işaretleyin.
- Açılır menüyü tıklayın ve benzerlik eşiğini 0.3 olarak ayarlayın (yazım hataları veya takma adlar gibi bazı farklılıklara izin verir).

Tabloları birleştirmek için bulanık eşleştirmeyi kullanın. Görsel: Yazar.
Power Query artık birebir değil, benzer olan isimleri eşleştirecek.
Adım 4: Eşleşen verileri genişletin
- Eşleşen sütunun yanındaki genişletme simgesini tıklayın.
- Loyalty_Table içinden Müşteri Adı’nı seçin ve Tamam’a tıklayın.
- Kapat & Yükle ile sonuçları tekrar Excel’e yükleyin.
Aşağıdaki görselde, bulanık aramanın isim varyasyonlarına sahip müşterileri otomatik olarak eşleştirdiğini görebilirsiniz.

Bulanık eşleştirme kullanılarak birleştirilen tablolar. Görsel: Yazar.
Joker karakter eşleştirme
Joker karakter eşleştirme, aradığımız şeyin yalnızca bir kısmını bildiğimizde adları veya değerleri bulmamıza yardımcı olur. Benzer kayıtlarla ya da net hatırlanmayan bilgilerle çalışırken işe yarar. Kullanabileceğimiz iki joker karakter vardır:
-
*herhangi bir sayıda karakteri eşleştirir (Örn. Jo* , John ve Jonathan ile eşleşir). -
?yalnızca bir karakteri eşleştirir (Örn. J?ck, Jack ile eşleşir ama Jake ile değil).
Nasıl çalıştıklarına bakalım:
-
A*, A ile başlayan her şeyi eşleştirir. -
*A, A ile biten her şeyi eşleştirir. -
*A*, hücrenin herhangi bir yerinde A geçen her şeyi eşleştirir.
Örneğin, adı e ile biten kişiyi bulmak için şunu kullanırım:
=MATCH("*e", A2:A11, 0)
Aşağıdaki görselde formülün 3 döndürdüğünü görebilirsiniz; çünkü Charlie adı e ile biter.

Joker karakterlerle konum bulun. Görsel: Yazar.
MATCH()’i Diğer Excel İşlevleriyle Birleştirme
MATCH(), başka işlevlerle eşleştirildiğinde daha da kullanışlı olur. Formüllerimizi daha esnek ve güncellenmesi kolay hale getirir. Nasıl olduğuna bakalım.
MATCH() ve INDEX()’i birleştirmek
MATCH() genellikle güçlü aramalar için INDEX() ile birlikte kullanılır. Solda yer alan VLOOKUP(), yalnızca soldan sağa arama yapabilirken, INDEX() ve MATCH() birlikte her yönde değer araması yapabilir.
Örneğin, oyuncular ve puanlarından oluşan bir listem var ve Brian’ın puanını bulmak istiyorum. Bunun için şu formülü kullanıyorum:
=INDEX(B2:B11,MATCH("Brian",A2:A11,0))
Hücre başvurusu ile görünümü ise şöyledir:
=INDEX(B2:B11, MATCH(E1, A2:A11, 0))

INDEX() ve MATCH()’i birleştirin. Görsel: Yazar.
VLOOKUP()’ta dinamik sütun seçimi için MATCH() kullanma
Biliyoruz ki VLOOKUP() sonuç sütununun numarasını elle girmemizi ister. Sütunlar değişirse formülü güncellememiz gerekir. Bunu önlemek için doğru sütunu otomatik bulmak üzere MATCH()’i kullanabiliriz.
Örneğin bir veri setim var ve Emily’nin takım adını öğrenmek istiyorum. VLOOKUP() ile formül şöyle görünür:
=VLOOKUP(F1, A2:C12, 3, FALSE)
Bu formül yalnızca soldan sağa arama yapabilir ve 3 sütun numarası sabittir; bu nedenle sütunlar değişirse formülü elle güncellemem gerekir.
Bu yüzden VLOOKUP() içindeki sütun numarasını sabitlemek yerine, MATCH()i şöyle birleştirebiliriz:
=VLOOKUP(F1, A2:C12, MATCH("Team", A1:C1, 0), FALSE)
Bu formülde MATCH("Team", A1:C1, 0), hangi sütunda Team başlığının olduğunu bulur ve onu döndürür. Ardından VLOOKUP(F1, A2:C4, 3, FALSE) sabit bir sayı yerine üçüncü sütundan veriyi çeker.

VLOOKUP() ve MATCH()’i birleştirin. Görsel: Yazar.
EXACT() ile büyük/küçük harf duyarlı MATCH()
Varsayılan olarak MATCH() büyük/küçük harf farkını göz ardı eder; bu nedenle Apple ve apple aynı kabul edilir. Büyük/küçük harf duyarlı bir aramaya ihtiyaç duyarsak, MATCH()’i EXACT() işleviyle şu şekilde birleştirmeliyiz:
=MATCH(TRUE, EXACT(A2:A7, D2), 0)
Bu bir dizi formülüdür, bu yüzden Ctrl + Shift + Enter tuşlarına basın. Bu formülde EXACT(A2:A4, "Emily") her ismi kontrol eder ve yalnızca tam eşleşme için TRUE döndürür. MATCH(TRUE, ...) ise ilk TRUE değerini bulur ve konumu döndürür.

EXACT() ve MATCH()’i birleştirin. Görsel: Yazar.
Son Düşünceler
MATCH(), joker karakterler ve bulanık eşleştirme ilk başta biraz zor görünebilir; ancak biraz pratikle bize çok zaman kazandırabilirler. Özellikle dağınık verilerle çalışırken ya da bir e-tabloda arama yapmanın daha esnek yollarına ihtiyaç duyduğumuzda çok faydalıdırlar.
Daha fazla keşfetmek isterseniz, Excel’de Veri Analizi kursumuz harika bir sonraki adım. Ya da temellerinizi güçlendirmek ve bu tür işlevleri kullanırken daha emin olmak için Excel Temelleri beceri yolumuza göz atın.
Başta hatalar yapabilirsiniz; birkaç deneme gerektirirse endişelenmeyin. Hepsi Excel’le rahat etmeye giden yolun bir parçası.
Karmaşık konuları basitleştirmeyi seven bir içerik stratejistiyim. Splunk, Hackernoon ve Tiiny Host gibi şirketlerin hedef kitleleri için ilgi çekici ve bilgilendirici içerikler üretmelerine yardımcı oldum.
Excel SSS
İki sütunu eşleşmeler ve farklılıklar için karşılaştırabilir miyim?
Bir listedeki değerlerin başka bir listede bulunup bulunmadığını kontrol etmek için ISNA() ve MATCH() işlevlerini kullanabilirsiniz.
=IF(ISNA(MATCH(B1,A1:A6,0)),"Not Present","Present")
B sütunundaki bir değer A sütununda bulunamazsa, formül "Not in List 1." sonucunu döndürür.
MATCH() kullanırken hatalar nasıl ele alınır?
MATCH() işlevi bir değeri bulamadığında, #N/A hatası döndürür. Bunu özel bir mesajla değiştirmek için formülünüzü şu şekilde IFERROR() işleviyle sarmalayın:
=IFERROR(MATCH("Apple", A1:A5, 0), "Not Found")
Bu formül, hata yerine özel bir mesaj görüntüler.

