Excel

Získajte posledný zápas

Get Last Match

Excel vzorec: Získať posledný zápasGenerický vzorec | _+_ | Zhrnutie

Ak chcete získať pozíciu poslednej zhody (t.j. posledného výskytu) vyhľadávanej hodnoty, môžete použiť vzorec poľa založený na funkciách IF, ROW, INDEX, MATCH a MAX. V uvedenom príklade vzorec v H6 je:





ako prevádzať negatívne v Excel
{= MAX ( IF (criteria, ROW (rng)- MIN ( ROW (rng))+1))}

Kde sú „mená“ pomenovaný rozsah C4: C11.

Poznámka: toto je an maticový vzorec a je potrebné ho zadať kombináciou klávesov Ctrl + Shift + Enter.





Vysvetlenie

Podstata tohto vzorca je, že zostavíme zoznam čísel riadkov pre daný rozsah zodpovedajúci hodnote a potom pomocou funkcie MAX získame najväčšie číslo riadku, ktoré zodpovedá poslednej zodpovedajúcej hodnote. Pomenované názvy „rozsahov“ používame len pre pohodlie.

Táto časť vzorca, pracujúca zvnútra von, vygeneruje relatívnu sadu čísel riadkov:



 
{= MAX ( IF (names=H5, ROW (names)- MIN ( ROW (names))+1))}

Výsledkom vyššie uvedeného výrazu je pole čísel takto:

čo znamená zabalený text v programe Excel
 
 ROW (names)- MIN ( ROW (names))+1

Všimnite si, že dostaneme 8 čísel, zodpovedajúcich 8 riadkom v tabuľke. Viď táto strana podrobnosti o tom, ako táto časť vzorca funguje.

Na účely tohto vzorca chceme iba čísla riadkov pre zhodujúce sa hodnoty , preto používame funkciu IF na filtrovanie hodnôt takto:

 
{12345678}

Výsledkom je pole, ktoré vyzerá takto:

 
 IF (names=H5, ROW (names)- MIN ( ROW (names))+1)

Toto pole stále obsahuje osem položiek. Zachovali sa však iba čísla riadkov, kde sa hodnota v pomenovanom rozsahu „mená“ rovná „amy“ (t.j. 1, 4, 7). Všetky ostatné položky v poli sú FALSE, pretože neprešli logickým testom vo funkcii IF.

Nakoniec funkcia IF dodá toto pole do funkcie MAX. MAX vráti najvyššiu hodnotu v poli, číslo 7, ktoré zodpovedá číslu posledného riadka, kde je názov „amy“. Keď poznáme číslo posledného zodpovedajúceho riadka, môžeme použiť INDEX na získanie hodnoty na tejto pozícii.

ako vložiť e do programu Excel

Od predposledného atď.

Ak chcete získať druhú až poslednú pozíciu, tretiu až poslednú atď., Môžete prepnúť z funkcie MIN na funkciu VEĽKÉ takto:

 
{1FALSEFALSE4FALSEFALSE7FALSE}

kde k predstavuje „n -té najväčšie“. Ak chcete napríklad získať predposledný zápas vo vyššie uvedenom príklade, môžete použiť:

 
{= LARGE ( IF (criteria, ROW (rng)- MIN ( ROW (rng))+1),k)}

Rovnako ako predtým je to vzorec poľa a musí byť zadaný pomocou klávesovej skratky + Shift + Enter.

Autor Dave Bruns


^