İçindekiler
Excel, eşleşen değerleri almak için farklı işlevler ve yollar sağlar. Duruma bağlı olarak, kullanıcılar tercihlerini seçebilirler. Bu eğitim size aşağıdakileri kullanarak nasıl sonuç elde edeceğinizi gösterecektir İNDEKS EŞLEŞMESİ Excel'de birden fazla eşleşme ile.
Her şeyden önce, bugünün çalışma kitabını tanıyalım.
Bugünkü çalışma kitabının sayfalarında, ürünleri ve fiyat ilişkilerini bulacaksınız. Bu ilişkiyi kullanarak, aşağıdakilerle değer almak için birkaç örnek göreceğiz çoklu kriterler .
Gerçek dünyada, çeşitli ilişkilerden oluşan veri kümelerini ele almanız ve sonuçları üretmek için farklı kriterler belirlemeniz gerekebilir. Şimdilik basit tutmak için, ad ve boyutla eşleşen bir Ürünün Fiyatını alacağız.
Alıştırma Çalışma Kitabını İndirin
Gösterim için kullanılan çalışma kitabını tüm formüllerle birlikte aşağıdaki bağlantıdan indirebilirsiniz.
Birden Fazla Eşleşme ile INDEX-MATCH.xlsx
INDEX-MATCH'in Temelleri
INDEX Fonksiyonunun Temelleri
INDEX işlevi Bir tablo veya aralık içindeki bir değeri veya bir değere referansı döndürür. Tek tek değerleri veya tüm satır ve sütunları almak için kullanılabilir. INDEX fonksiyonunun sözdizimini görelim.
INDEX(dizi/referans, satır_sayısı, sütun_sayısı, alan_sayısı)
dizi veya referans: Bakılacak bir hücre veya hücre aralığı
row_number: Dizide değer döndürülecek bir satır
sütun_sayısı: Dizide değer döndürülecek sütun
alan_numarası: 'nin kesişimini döndürmek için referansta bir aralık seçer. row_num ve column_num Bu isteğe bağlı bir alandır.
Formülü yazarken aşağıdakileri sağlayıp sağlamayacağınızı seçebilirsiniz row_number veya column_number . Eğer sağlarsanız row_number kullanmak isteğe bağlıdır column_number ve tam tersi.
Kontrol edebilirsiniz Microsoft desteği sitesinde daha derin bir sözdizimi dökümü için.
MATCH Fonksiyonunun Temelleri
Pratik olarak, bir işlevle daha sık karşılaşacaksınız İNDEKS fonksiyonu MATCH işlevi . Bu MAÇ işlevi, bir hücre aralığında belirtilen bir öğenin konumunu bulmak için kullanılır. Aralıktaki belirli bir öğenin göreli konumunu döndürür.
Sözdizimi MAÇ fonksiyonu
MATCH(lookup_value, lookup_array, match_type)
lookup_value: Lookup_array içinde aranacak değer.
lookup_array: Aranmakta olan bir hücre aralığı.
match_type: Bu isteğe bağlı bir alandır. 3 değer girebilirsiniz.
1 = lookup_value değerinden küçük veya eşit
0 = Tam arama_değeri
-1 = lookup_value değerinden büyük veya eşit
Daha derin bir anlayış için, şu adrese göz atabilirsiniz Microsoft desteği Site.
6 INDEX-MATCH Formülünün Çoklu Eşleşmelerle Kullanılmasına Uygun Örnekler
Şimdi bu formülleri ve teorileri veri setimizde eyleme geçireceğiz. İNDEKS EŞLEŞTİRME Bunları farklı senaryolarda nasıl uygulayabileceğimizi görmek için takip edin veya belirli bir tanesini tercih ederseniz, yukarıdaki tabloda bulabilirsiniz.
1. Çoklu Kriter ile INDEX-MATCH
ile değerleri getirmek için çoklu kriterler Örneğin, küçük beden bir gömleğin fiyatını almak istiyorsanız (çalışma kitabımızda), Ürün adı - Gömlek ve Beden - Küçük olarak ayarlamanız gerekir.
Şimdi Excel'de bu çoklu eşleşmelerle dizin eşleşmesini bulmak için formülü nasıl kullanabileceğimizi görmek için aşağıdaki adımları izleyin.
Adımlar:
- İlk olarak, hücreyi seçin G6 .
- Ardından aşağıdaki formülü yazın.
=INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0))
🔎 Formülün Dağılımı
INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0))
👉
(G4=B5:B15) ve (G5=C5:C15) her iki koşuldur ve aşağıdakilerden birini döndürür DOĞRU veya YANLIŞ koşulların doğru olup olmadığına bağlı olarak. Sayısal olarak 1 veya 0'dır. Dolayısıyla, çarpma işlemi her ikisinin de doğru olduğu durumlarda 1 döndürür.
👉
MATCH(1,(G4=B5:B15)*(G5=C5:C15),0) her iki koşulun da doğru olduğu konumu döndürür. Bu durumda, 1'dir.
👉
INDEX(D5:D15,MATCH(1,(G4=B5:B15)*(G5=C5:C15),0)) formülün önceki kısmının döndürdüğü konumdaki değeri döndürür.
- Son olarak, tuşuna basın Girin .
Excel'de birden çok ölçüt veya eşleşme için INDEX MATCH'i bu şekilde kullanabiliriz.
Daha fazlasını okuyun: Excel'de Farklı Dizilerden Birden Çok Ölçüt Nasıl Eşleştirilir
2. Satır ve Sütunlara Ait Birden Fazla Kriterle INDEX-MATCH
Bu bölümde, iki veya daha fazla kriteri test ederek bir aramanın nasıl gerçekleştirileceğini tartışacağız. satırlar ve sütunlar Biraz zor ve karmaşık görünebilir.
Örneğimize biraz değişiklik getiriyoruz, tablomuz artık Boyut değerleri (Small, Large, M, XL) ayrı sütunları temsil edecek şekilde düzenlenmiştir.
Önceki bölüme benzer şekilde, ürün ve gerekli boyutu kriter değerleri olarak ayarlayın.
Bu bölüm için formülü nasıl kullanabileceğimizi görmek için aşağıdaki adımları izleyin.
Adımlar:
- İlk olarak, hücreyi seçin I6 .
- Ardından aşağıdaki formülü içine yazın.
=INDEX(C5:F7,MATCH(I4,B5:B7,0),MATCH(I5,C4:F4,0))
🔎 Formülün Dağılımı
👉
MATCH(I4,B5:B7,0) değerinin tam eşleşmesini döndürür. I4 aralıkta B5:B7 .
👉
Aynı şekilde, MATCH(I5,C4:F4,0) değerinin tam eşleşmesini döndürür. I5 aralıkta C4:F4 .
👉
Sonunda, INDEX(C5:F7,MATCH(I4,B5:B7,0),MATCH(I5,C4:F4,0)) ilk fonksiyonun çıktısını satır numarası ve ikinci fonksiyonun çıktısını sütun numarası olarak alır ve aralıktaki konumda bulunan değeri döndürür C5:F7 .
- Bundan sonra, tuşuna basın Girin .
Böylece, aşağıdaki İNDEKS EŞLEŞTİRME satırlara ve sütunlara ait birden fazla kriter ile.
Daha fazlasını okuyun: Excel Dizini Tekli/çoklu ölçütleri tekli/çoklu sonuçlarla eşleştirme
Benzer Okumalar
- Excel'de 3 Kriterli INDEX MATCH (4 Örnek)
- Excel'de Birden Çok Sayfada INDEX MATCH (Alternatifli)
- Excel'de Birden Çok Ölçüt Altında INDEX-MATCH İşlevleri ile Toplama
- Excel'de Dizin Eşleştirme Toplamı Birden Çok Satır (3 Yol)
- Excel'de Minimum Değeri Bulmak için INDEX-MATCH Formülü (4 Uygun Yol)
3. Bitişik Olmayan Sütunlardan INDEX-MATCH
Bu bölümde, bitişik olmayan iki sütun kullanarak eşleşen değerlerin nasıl getirileceğine dair bir örnek göstereceğiz. IFERROR işlevi bu senaryo için.
Bu, gösteri için veri kümesi olacaktır.
Nasıl kullanabileceğimizi görmek için aşağıdaki adımları izleyin İNDEKS EŞLEŞTİRME bu veri kümesindeki bitişik olmayan sütunlar (ürün ve miktar) için.
Adımlar:
- İlk olarak, hücreyi seçin G6 .
- Ardından aşağıdaki formülü içine yazın.
=IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "Değer Yok")
🔎 Formülün Dağılımı
IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "Değer Yok")
👉
MATCH(G5,B4:B7,0) hücresinin değerinin tam eşleşmesini bulur G5 aralıkta B4:B7 .
👉
ve MATCH(F6,B4:D4,0) 'nin tam eşleşmesini bulur. F6 aralıktır B4:D4 .
👉
O zaman INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)) ilk fonksiyon değerini satır numarası ve ikinci fonksiyon değerini sütun numarası olarak alır ve aralıktaki o konumdaki değeri döndürür B4:D7 .
👉
Sonunda, IFERROR(INDEX(B4:D7,MATCH(G5,B4:B7,0),MATCH(F6,B4:D4,0)), "Değer Yok") Formül yürütülürken bir hata oluşursa "Değer Yok" dizesini döndürür. Aksi takdirde, normal değeri döndürür.
- Ardından, tuşuna basın Girin klavyenizde.
Sonuç olarak, Excel'de birden fazla kriter için bile seçilen kriterler için bitişik olmayan sütunlardan INDEX-MATCH kullanarak istenen eşleşmeyi bulabiliriz.
4. Birden Fazla Tablodan INDEX-MATCH
Birden fazla tablodaki eşleşmeleri bulmak için İNDEKS EŞLEŞTİRME formülü. Bu işlevin yanı sıra, şunlara ihtiyacımız olacak KÜÇÜK , ISNUMBER , SIRA , COUNTIF ve IFERROR işlevleri de vardır.
Örnek sayfada, 2 mağazanın Ürünleri bulunmaktadır. Bu sayfayı kullanarak, görevin nasıl yapılacağını göreceğiz.
Excel'deki bu tablo kümesinden birden fazla eşleşme ile INDEX-MATCH ile birlikte bu işlevlerin kombinasyonunu nasıl kullanabileceğimizi görmek için bu adımları izleyin.
Adımlar:
- İlk olarak, hücreyi seçin C14 .
- Şimdi aşağıdaki formülü yazın.
=IFERROR(INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1)), INDEX($F$6:$F$10, SMALL(IF(ISNUMBER(MATCH($E$6:$E$10, $C$12, 0)), MATCH(ROW($E$6:$E$10), ROW($E$6:$E$10)), ""), ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12))))
🔎 Formülün Dağılımı
IFERROR(INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1)), INDEX($F$6:$F$10, SMALL(IF(ISNUMBER(MATCH($E$6:$E$10, $C$12, 0)), MATCH(ROW($E$6:$E$10), ROW($E$6:$E$10)), ""), ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12))))
👉
MATCH($B$6:$B$10, $C$12, 0) 'nin tam eşleşmesini bulur. C12 aralıkta B6:B10 .
👉
ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)) fonksiyonda değerin bir sayı olup olmadığını kontrol eder.
👉
IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), "") ROW($B$6:$B$10)), önceki fonksiyonun bir sayı olup olmadığını kontrol eder. Eğer öyleyse, aşağıdaki çıktı değerini döndürür MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) birinci ve ikinci satır numaraları dizisinin eşleştiği konumdur. SIRA Aksi takdirde boş bir dize döndürür.
👉
SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1)) döndürür SATIRLAR($A$1:A1) -Dizideki en küçük değer.
👉
Sonunda. INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1)) aralığında o konumdaki değeri döndürür C6:C10 .
👉
INDEX($F$6:$F$10, SMALL(IF(ISNUMBER(MATCH($E$6:$E$10, $C$12, 0)), MATCH(ROW($E$6:$E$10), ROW($E$6:$E$10)), ""), ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12)) aynı şeyi yapar, ancak formülün bu kısmında aralıklar açıkça farklı olduğu için ikinci tablodan.
👉
Son olarak, tüm fonksiyon tüm fonksiyonu alır ve İNDEKS EŞLEŞTİRME kombinasyonları. IFERROR işlevi, formül yürütülürken hata olması durumunda herhangi bir değer döndürmez.
- Ardından tuşuna basın Girin .
- Bundan sonra, hücreyi tekrar seçin ve tablolardaki değerlerin geri kalanını bulmak için birden fazla hücre için doldurma tutamacı simgesini tıklayıp aşağı sürükleyin. Fazladan hücreleri sürükleyebilirsiniz, Excel daha fazla hücre kalmadığında değerleri durduracaktır.
Excel'de birden çok tablodaki ölçütleri kullanarak INDEX-MATCH'i bu şekilde kullanabiliriz.
Daha fazlasını okuyun: Excel'de INDEX, MATCH ve COUNTIF İşlevini Kullanarak Çoklu Kriterler
5. Birden Fazla Çalışma Sayfasından INDEX-MATCH
INDEX-MATCH formülünü farklı sayfalar üzerinde kullanabiliriz. Burada iki farklı çalışma sayfası üzerinde bu iki tablo var.
Atölye 1 için Atölye 1 sayfası ve atölye 2 için Atölye 2 sayfası.
Sonucu üretmek için tek yapmamız gereken Hücre Referansının önünde Sayfa adını vermektir. Daha fazla ayrıntı için aşağıdaki adımları izleyin.
Adımlar:
- İlk olarak, hücreyi seçin C14 "Dükkan 1" sayfasından.
- Ardından aşağıdaki formülü yazın.
=IFERROR(INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1))), INDEX('Shop 2'!$C$6:$C$10, SMALL(IF(ISNUMBER(MATCH('Shop 2'!$B$6:$B$10, $C$12, 0)), MATCH(ROW('Shop 2'!$B$6:$B$10), ROW('Shop 2'!$B$6:$B$10)), ""), ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12))))
🔎 Formülün Dağılımı
IFERROR(INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), “”), ROWS($A$1:A1))), INDEX(‘Shop 2’!$C$6:$C$10, SMALL(IF(ISNUMBER(MATCH(‘Shop 2’!$B$6:$B$10, $C$12, 0)), MATCH(ROW(‘Shop 2’!$B$6:$B$10), ROW(‘Shop 2’!$B$6:$B$10)), “”), ROWS($A$1:A1)-COUNTIF($B$6:$B$10, $C$12))))
👉
MATCH($B$6:$B$10, $C$12, 0) hücre değerinin tam eşleşmesini arar C12 aralıkta B6:B10 .
👉
ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)) önceki fonksiyonun çıktısının bir sayı olup olmadığını kontrol eder. Bu da bir eşleşme olup olmadığını belirler. Bu sadece sayı değerini bir boolean'a dönüştürmek içindir.
👉
O zaman IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), "") boolean değerini kontrol eder ve MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) Aksi takdirde boş bir dize döndürür. MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)) kısmı, aşağıdakilerin bulunduğu sayı serisidir ROW($B$6:$B$10) ve ROW($B$6:$B$10) Bu sadece seçilen bir bölümdeki toplam satır sayısını sınırlamak için kullanışlı bir hiledir.
👉
Ondan sonra, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1) için arama yapar SATIRLAR($A$1:A1) -'nin çıktısından alınan en küçük değerdir. EĞER kısmı.
👉
Sonunda, INDEX($C$6:$C$10, SMALL(IF(ISNUMBER(MATCH($B$6:$B$10, $C$12, 0)), MATCH(ROW($B$6:$B$10), ROW($B$6:$B$10)), ""), ROWS($A$1:A1)) önceki fonksiyonun çıktısını satır numarası olarak alır ve SATIRLAR($A$1:A1) sütun numarası olarak alır ve aralıkta bu konumda olan değeri döndürür C6:C10 .
👉
Aynı şekilde, INDEX('Shop 2'!$C$6:$C$10, SMALL(IF(ISNUMBER(MATCH('Shop 2'!$B$6:$B$10, $C$12, 0)), MATCH(ROW('Shop 2'!$B$6:$B$10), ROW('Shop 2'!$B$6:$B$10)), "") Sayfa adı "Mağaza 2" olduğundan, aralıkları/hücreleri seçmeden önce ekledik. Bunları hesaplama yaptığınız sayfaya eklemeniz gerekmez. Bu nedenle, formülün önceki bölümünde "Mağaza 1" için bunu yapmadık.
👉
Son olarak, tüm fonksiyonu bir IFERROR Bunun nedeni, formül yürütülürken hata oluşması durumunda bir boşluk döndürmektir.
- Son olarak, tuşuna basın Girin .
- Şimdi hücreyi tekrar seçin. Ardından bazı hücreler için doldurma tutamacı simgesine tıklayın ve aşağı sürükleyin (çıktı hücresinin tahmini miktarından daha fazla olması iyi olacaktır).
Sonuç olarak, Excel'deki birden çok çalışma sayfasından INDEX-MATCH kullanarak tüm eşleşmeleri bulacağız.
6. Dizisiz Çoklu Kriterler için INDEX-MATCH
INDEX-MATCH'i herhangi bir dizi olmadan birden fazla eşleşme veya kriter için de kullanabiliriz. Örneğin, aşağıdaki veri kümesini ele alalım.
Ancak bunu başarmak için önce bir yardımcı sütuna ihtiyacımız var. CONCATENATE işlevi Söz konusu işlevlere ek olarak. Kılavuzun tamamı için bu adımları izleyin.
Adımlar:
- İlk olarak, hücreyi seçin F5 ve aşağıdaki formülü yazınız.
=CONCATENATE(C5,",",D5,",",E5)
- Ardından tuşuna basın Girin .
- Şimdi hücreyi tekrar seçin ve formülü hücrelerin geri kalanı için çoğaltmak üzere doldurma tutamacı simgesine tıklayıp sütunun sonuna sürükleyin.
- Ardından, orijinal veri kümesindeki tüm 100'ler için INDEX-MATCH değerini bulacağız. Bunun için, değeri saklamak üzere bir hücre seçin ( H5 bu durumda).
- Ardından aşağıdaki formülü ekleyin.
=INDEX(B5:B19,MATCH("100,100,100",F5:F19,0))
🔎 Formülün Dağılımı
👉 MATCH(“100,100,100”,F5:F19,0) 'nin tam eşleşmesini arar. 100,100,100 aralıkta F5:F19 .
👉 O zaman INDEX(B5:B19,MATCH(“100,100,100”,F5:F19,0)) değerin eşleştiği konumdaki değeri döndürür.
- Son olarak, tuşuna basın Girin .
Bu şekilde, Excel'de herhangi bir dizi olmadan birden fazla kriter veya eşleşme için INDEX-MATCH kullanabiliriz.
Excel'de INDEX-MATCH Formülünü Kullanarak Birden Fazla Değeri Dikey Olarak Döndürme
INDEX-MATCH kullanarak dikey olarak birden fazla değer döndürmek isterseniz, aşağıdaki örneğe bakalım.
Veri kümesi için bunu nasıl başarabileceğimizi görmek için aşağıdaki adımları izleyin.
Adımlar:
- İlk olarak, hücreyi seçin F5 .
- İkinci olarak, aşağıdaki formülü yazın.
=IFERROR(INDEX($C$5:$C$14,SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW(1:1)),"")
🔎 Formülün Dağılımı
👉
ROW($B$5:$B$14) aralığının satır numaralarını içeren bir dizi döndürür B5:B14 .
👉
ROW($B$5:$B$14)-ROW($B$5)+1 dizi ile hücrenin satır numarası arasındaki farkı döndürür B5 bu durumda sadece 1'den 10'a kadar olan bir dizidir.
👉
IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1) hücre değerinin nerede olduğunu kontrol eder E5 aralığında eşittir B5:B14 ve bir önceki diziden doğru olduğu dizideki sayıyı döndürür.
👉
SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW(1:1) dizideki en küçük sayıyı döndürür.
👉
INDEX($C$5:$C$14,SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW(1:1)) sonra aralıktaki o konumdaki değeri döndürür C5:C14 .
👉
Sonunda, IFERROR(INDEX($C$5:$C$14,SMALL(IF($E$5=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1),ROW(1:1)),"") bir değer formülde bir hatayla sonuçlanırsa boş bir dize döndürdüğünden emin olur.
- Üçüncü olarak, basın Girin .
- Ardından hücreyi tekrar seçin. Son olarak, tüm değerleri almak için doldurma tutamacı simgesine tıklayın ve bazı hücreler için aşağı sürükleyin.
Bu şekilde Excel'de INDEX-MATCH kullanarak birden fazla değeri dikey olarak döndürebiliriz.
Daha fazlasını okuyun: Farklı Bir Sayfada Birden Fazla Kriter ile INDEX MATCH (2 Yol)
Sonuç
Bugünlük bu kadar. Size birden fazla eşleşme ile INDEX MATCH yapmanın birkaç yolunu göstermeye çalıştık. Umarım bunu yararlı bulursunuz. Anlaşılması zor görünen herhangi bir şey varsa yorum yapmaktan çekinmeyin. Görev için başka herhangi bir yöntemi bize bildirmekten memnuniyet duyarız.
Bunun gibi daha fazla rehber için şu adresi ziyaret edin Exceldemy.com .