Birden fazla sütunda İNDİS ve EŞLEŞTİR
Bir değeri birden fazla sütunda eşleştirerek aramak için, MMULT, TRANSPOSE, ve COLUMN fonksiyonlarını içeren bir dizi formülü olan İNDİS ve EŞLEŞTİR fonksiyonlarına dayalı bir formül işinizi görecektir.
Birden fazla sütunda eşleştirme yaparak bir değeri nasıl ararsınız?
Yukarıdaki tabloda gösterildiği gibi her öğrencinin ilgili sınıfını doldurmak için, burada bilgiler birden fazla sütunda listelenmiştir, önce MMULT, TRANSPOSE ve COLUMN fonksiyonlarının hilesini kullanarak bir matris dizisi oluşturabilirsiniz. Daha sonra EŞLEŞTİR fonksiyonu size arama değerinizin konumunu verecek ve bu da aradığınız değeri almak için İNDİS'e aktarılacaktır.
Genel Sözdizimi
=INDEX(dönüş_aralığı,(EŞLEŞTİR(1,MMULT(--(arama_dizisi=arama_değeri),TRANSPOSE(SÜTUN(arama_dizisi)^0)),0)))
√ Not: Bu bir dizi formülüdür ve bunu Ctrl + Shift + Enter ile girmenizi gerektirir.
- dönüş_aralığı: Formülün sınıf bilgisini nereden döndürmesini istediğinizi belirten aralık. Burada sınıf aralığına atıfta bulunuyor.
- arama_değeri: Formülün ilgili sınıf bilgisini bulmak için kullandığı değer. Burada verilen isme atıfta bulunuyor.
- arama_dizisi: Aranan değerin listelendiği hücre aralığı; Aranan değeri karşılaştırmak için kullanılan değerlerin aralığı. Burada isim aralığına atıfta bulunuyor.
- eşleşme_türü 0: EŞLEŞTİR fonksiyonunun tam olarak aranan değere eşit olan ilk değeri bulmasını sağlar.
Jimmy'nin sınıfını bulmak için lütfen aşağıdaki formülü H5 hücresine kopyalayın veya girin ve sonucu almak için Ctrl + Shift + Enter tuşlarına basın:
=INDEX($B$5:$B$7,(EŞLEŞTİR(1,MMULT(--($C$5:$E$7=G5),TRANSPOSE(SÜTUN($C$5:$E$7)^0)),0)))
√ Not: Yukarıdaki dolar işaretleri ($) mutlak referansları gösterir, yani formüldeki isim ve sınıf aralıkları formülü diğer hücrelere taşıdığınızda veya kopyaladığınızda değişmez. Arama değerini temsil eden hücre referansına dolar işareti eklememelisiniz, çünkü onu diğer hücrelere kopyaladığınızda bağıl olmasını istersiniz. Formülü girdikten sonra, formülü aşağıya doğru sürükleyerek formülü alttaki hücrelere uygulayın.
Formül açıklaması
=INDEX($B$5:$B$7,(EŞLEŞTİR(1,MMULT(--($C$5:$E$7=G5),TRANSPOSE(SÜTUN($C$5:$E$7)^0)),0)))
- --($C$5:$E$7=G5): Bu segment, aralıktaki her değeri kontrol eder $C$5:$E$7 eğer G5 hücresindeki değere eşitse, ve şu şekilde bir DOĞRU ve YANLIŞ dizisi oluşturur:
{TRUE,FALSE,FALSE;FALSE,FALSE,FALSE;FALSE,FALSE,FALSE}.
Çift negatif daha sonra DOĞRU'ları ve YANLIŞ'ları 1'ler ve 0'lara dönüştürür ve şu şekilde bir dizi elde edilir:
{1,0,0;0,0,0;0,0,0}. - SÜTUN($C$5:$E$7): SÜTUN fonksiyonu $C$5:$E$7 aralığı için şu şekilde bir dizi içinde sütun numaralarını döndürür: {3,4,5}.
- TRANSPOSE(TRANSPOSE(SÜTUN($C$5:$E$7)^0)^0) = TRANSPOSE(TRANSPOSE({3,4,5}^0)^0): Üs 0'a yükseltildikten sonra, {3,4,5} dizisindeki tüm sayılar 1'e dönüştürülür: {1,1,1}. TRANSPOSE fonksiyonu daha sonra sütun dizisini şu şekilde bir satır dizisine dönüştürür: {1;1;1}.
- MMULT(MMULT(--($C$5:$E$7=G5),,TRANSPOSE(SÜTUN($C$5:$E$7)^0))) = MMULT(MMULT({1,0,0;0,0,0;0,0,0},,{1;1;1})): MMULT fonksiyonu iki dizinin matris çarpımını şu şekilde döndürür: {1;0;0}.
- EŞLEŞTİR(1,MMULT(--($C$5:$E$7=G5),TRANSPOSE(SÜTUN($C$5:$E$7)^0)),0) = EŞLEŞTİR(1,{1;0;0},0): Eşleşme_türü 0, EŞLEŞTİR fonksiyonunun {1;0;0} dizisindeki 1'in ilk eşleşmesinin konumunu döndürmesini zorlar, bu da 1'dir.
- İNDİS($B$5:$B$7$B$5:$B$7,,,(EŞLEŞTİR(1,MMULT(--($C$5:$E$7=G5),,,TRANSPOSE(SÜTUN($C$5:$E$7)^0)),0))) = İNDİS($B$5:$B$7$B$5:$B$7,,,1): İNDİS fonksiyonu sınıf aralığı $B$5:$B$7'deki 1. değeri döndürür, bu da A'dır.
Bir değeri birden fazla sütunda eşleştirme yaparak kolayca aramak için, profesyonel Excel eklentimiz olan Kutools For Excel'i de kullanabilirsiniz. Görevi tamamlamak için buradaki talimatları inceleyin.
İlgili fonksiyonlar
Excel İNDİS fonksiyonu, bir aralıktan veya diziden belirli bir pozisyona göre görüntülenen değeri döndürür.
Excel EŞLEŞTİR fonksiyonu, bir hücre aralığında belirli bir değeri arar ve değerin göreli konumunu döndürür.
Excel MMULT fonksiyonu, iki dizinin matris çarpımını döndürür. Dizi sonucu, array1 ile aynı sayıda satıra ve array2 ile aynı sayıda sütuna sahiptir.
Excel TRANSPOSE fonksiyonu, bir aralığın veya dizinin yönünü değiştirir. Örneğin, yatay olarak sıralarda düzenlenmiş bir tabloyu dikey olarak sütunlara veya tam tersine çevirebilir.
SÜTUN fonksiyonu, formülün göründüğü sütun sayısını veya verilen referansın sütun sayısını döndürür. Örneğin, formül =SÜTUN(BD) 56 döndürür.
İlgili Formüller
İNDİS ve EŞLEŞTİR ile çoklu kriterli arama
Bir Excel elektronik tablosunda birkaç sütun ve satır başlığı olan büyük bir veritabanıyla uğraşırken, birden fazla kritere uyan bir şey bulmak her zaman zordur. Bu durumda, İNDİS ve EŞLEŞTİR fonksiyonlarına dayalı bir dizi formülü kullanabilirsiniz.
İNDİS ve EŞLEŞTİR ile çift yönlü arama
Excel'de hem satırlarda hem de sütunlarda bir şey aramak için, ya da belirli bir satır ve sütunun kesişimindeki değeri aramak için İNDİS ve EŞLEŞTİR fonksiyonlarının yardımıyla yapabiliriz.
Birden fazla kriterle en yakın eşleşen değeri ara
Bazı durumlarda, birden fazla kritere göre en yakın veya yaklaşık eşleşen değeri bulmanız gerekebilir. İNDİS, EŞLEŞTİR ve EĞER fonksiyonlarının kombinasyonu ile Excel'de hızlı bir şekilde yapabilirsiniz.
En İyi Ofis Üretkenlik Araçları
Kutools for Excel - Kalabalıktan Sıyrılmaya Yardımcı Olur
Kutools for Excel, İhtiyacınız Olan Her Şeyin Tek Tıklama Uzağında Olduğundan Emin Olmak İçin 300'den Fazla Özelliğe Sahiptir...
Office Tab - Microsoft Office'de (Excel dahil) Sekmeli Okuma ve Düzenlemeyi Etkinleştir
- Bir saniyede, onlarca açık belge arasında geçiş yapın!
- Her gün yüzlerce fare tıklamasından kurtulun, fare eline veda edin.
- Birden fazla belgeyi görüntülediğinizde ve düzenlediğinizde üretkenliğinizi %50 artırır.
- Ofis'e (Excel dahil) Chrome, Edge ve Firefox gibi etkili sekmeler getirir.