
Generisk formel
=INDEX(rng1,MODE(IF(rng2=criteria,MATCH(rng1,rng1,0))))
Sammendrag
For å finne den hyppigst forekommende teksten i et område, basert på kriteriene du oppgir, kan du bruke en matriseformel basert på flere Excel-funksjoner INDEKS, MATCH, MODE og IF. I eksemplet vist er formelen i G5:
=INDEX(supplier,MODE(IF(client=F5,MATCH(supplier,supplier,0))))
hvor "leverandør" er det navngitte området C5: C15, og "klienten" er det navngitte området B5: B15.
Merk: dette er en matriseformel og må angis med kontroll + skift + enter.
Forklaring
Når vi arbeider fra innsiden og ut, bruker vi MATCH-funksjonen til å matche tekstområdet mot seg selv, ved å gi MATCH det samme området for oppslagsverdi og oppslagsmatrise, med null for samsvarstype:
MATCH(supplier,supplier,0)
Siden oppslagsverdien er en matrise med 10 verdier, returnerer MATCH en matrise med 10 resultater:
(1;1;3;3;5;1;7;3;1;5;5)
Hvert element i denne matrisen representerer den første posisjonen der et leverandørnavn vises i dataene. Denne matrisen mates inn i IF-funksjonen, som bare brukes til å filtrere resultatene for klient A:
IF(client=F5,(1;1;3;3;5;1;7;3;1;5;5))
IF returnerer den filtrerte matrisen til MODE-funksjonen:
(1;FALSE;3;FALSE;5;1;FALSE;FALSE;1;5;FALSE)
Legg merke til at bare posisjoner tilknyttet klient A forblir i matrisen. MODE ignorerer FALSE verdier og returnerer det hyppigst forekommende tallet til INDEX-funksjonen som radnummer:
=INDEX(supplier,1)
Til slutt, med det navngitte området "leverandør" som matrise, returnerer INDEX "Brown", den hyppigst forekommende leverandøren for klient A.