Excel formula: Izdvojiti više podudaranja u zasebne stupce -

Sažetak

Da biste izdvojili više podudaranja u odvojene ćelije, u zasebnim stupcima možete upotrijebiti formulu niza koja se temelji na INDEX i SMALL. U prikazanom primjeru formula u F5 je:

(=IFERROR(INDEX(names,SMALL(IF(groups=$E5,ROW(names)-MIN(ROW(names))+1),COLUMNS($E$5:E5))),""))

Ovo je formula niza i mora se unijeti s Control + Shift + Enter.

Nakon što unesete formulu u prvu ćeliju, povucite je prema dolje i popunite kako biste popunili ostale stanice.

Obrazloženje

Napomena: ova formula koristi dva imenovana raspona: "imena" se odnose na C5: C11, a "grupe" odnose se na B5: B11. Ta su imena definirana i na snimci zaslona iznad.

Suština ove formule je sljedeća: koristimo funkciju SMALL za generiranje broja retka koji odgovara "n-tom podudaranju". Jednom kada imamo broj retka, jednostavno ga prosljeđujemo u funkciju funkcije INDEX, koja vraća vrijednost u tom retku.

Trik je u tome što SMALL radi s nizom koji dinamički konstruira IF u ovom bitu:

IF(groups=$E5,ROW(names)-MIN(ROW(names))+1)

Ovaj isječak testira imenovani raspon "grupa" na vrijednost u E5. Ako se pronađe, vraća broj retka iz niza relativnih brojeva redaka stvorenih sa:

ROW(names)-MIN(ROW(names))+1

Konačni rezultat je niz koji sadrži brojeve tamo gdje postoji podudaranje, a FALSE tamo gdje ne:

(1; NETOČNO; NETOČNO; NETOČNO; NETOČNO; 6; NETOČNO)

Ovaj niz ide u MALO. Vrijednost k za SMALL (nth) dolazi iz širećeg raspona:

COLUMNS($E$5:E5)

Kada se kopira preko tablice rezultata, raspon se širi, što dovodi do povećanja k (nth). Funkcija SMALL vraća svaki odgovarajući broj retka, koji se funkciji INDEX isporučuje kao number_num, s imenovanim rasponom "imena" kao nizom.

Pogreške u rukovanju

Kada COLUMNS vrati vrijednost za k koja ne postoji, SMALL baca grešku #NUM. To se događa nakon što su se dogodile sve utakmice. Da bismo suzbili pogrešku, omotamo formulu u funkciju IFERROR da bismo uhvatili pogreške i vratili prazan niz ("").

Zanimljivi članci...