Excel

Indexujte a zhodujte sa vo viacerých stĺpcoch

Index Match Multiple Columns

Excel vzorec: Index a zhoda vo viacerých stĺpcochGenerický vzorec | _+_ | Zhrnutie

Na vyhľadanie hodnoty priradením do viacerých stĺpcov môžete použiť maticový vzorec na základe MMULT, TRANSPOSE, COLUMN a INDEX. V uvedenom príklade vzorec v H4 je:



{= INDEX (rng1, MATCH (1, MMULT (--(rng2=critera), TRANSPOSE ( COLUMN (rng2)^0)),0))}

kde „mená“ sú pomenovaný rozsah C4: E7 a „skupiny“ je pomenovaný rozsah B4: B7. Vzorec vráti skupinu, ku ktorej patrí každé meno.

ako opakovať funkciu v programe Excel

Poznámka: toto je an maticový vzorec a musí byť zadané s ovládaním shift shift.





Vysvetlenie

Pri práci zvnútra von sú logickými kritériami použitými v tomto vzorci:

 
{= INDEX (groups, MATCH (1, MMULT (--(names=G4), TRANSPOSE ( COLUMN (names)^0)),0))}

kde názvy je pomenovaný rozsah C4: E7. To vygeneruje výsledok TRUE / FALSE pre každú hodnotu v dátach a dvojitý negatív prinúti hodnoty TRUE FALSE k 1 a 0, aby sa získalo pole takto:



 
--(names=G4)

Toto pole má 4 riadky po 3 stĺpce a zodpovedá štruktúre „mien“.

Vytvorí sa druhé pole s týmto výrazom:

 
{0,0,01,0,00,0,00,0,0}

Funkcia COLUMN sa používa na vytvorenie numerického poľa s 3 stĺpcami a 1 riadkom a funkcia TRANSPOSE konvertuje toto pole na 1 stĺpec a 3 riadky. Zvýšením na nulu sa jednoducho skonvertujú všetky čísla v poli na 1. Na násobenie matice sa potom použije funkcia MMULT:

aký vzorec v programe Excel odčítať
 
 TRANSPOSE ( COLUMN (names)^0))

a výsledné ide do funkcie MATCH ako pole s 1 ako hodnotou vyhľadávania:

daj mi číslo medzi 1 a 10
 
 MMULT ({0,0,01,0,00,0,00,0,0},{111})

Funkcia MATCH vracia pozíciu prvého zápasu, ktorá zodpovedá riadku prvého zodpovedajúceho riadku, ktorý spĺňa zadané kritériá. Toto je vložené do INDEXU ako číslo riadka, pričom pomenované „skupiny“ skupín sú ako pole:

 
 MATCH (1,{0100},0)

Nakoniec INDEX vráti „Medveď“, do ktorého patrí Adam.

Doslova obsahuje kritériá

Ak chcete namiesto presnej zhody vyhľadať konkrétne textové hodnoty, môžete použiť funkcie ISNUMBER a SEARCH spoločne. Na porovnanie buniek obsahujúcich „jablko“ môžete napríklad použiť:

 
= INDEX (groups,2)

Tento vzorec je vysvetlený tu .

Autor Dave Bruns


^