Excel-formel: Räkna totalt antal matchningar i två intervall -

Innehållsförteckning

Generisk formel

=SUMPRODUCT(COUNTIF(range1,range2))

Sammanfattning

För att jämföra två områden och räkna totala matchningar mellan de två områdena kan du använda en formel som kombinerar COUNTIF-funktionen med SUMPRODUCT-funktionen. I exemplet som visas är formeln i cell G7:

=SUMPRODUCT(COUNTIF(B5:B11,D5:D11))

Obs: den här formeln bryr sig inte om platsen eller ordningen för artiklarna i varje intervall.

Förklaring

Antag att du har en "master" -lista av något slag, och att du också har en annan lista som innehåller några av samma objekt. Du vill ha en formel som jämför värdena i den andra listan för att se hur många av dem som visas i den första listan. Du bryr dig inte om ordningen som artiklarna, du vill bara veta hur många artiklar i lista 2 som visas i lista 1.

COUNTIF-funktionen räknar saker i ett intervall som uppfyller dina kriterier. Normalt skulle du ge COUNTIF ett intervall som A1: A10 och ett enkelt kriterium som "> 10". COUNTIF returnerar sedan antalet celler i A1: A10 som är större än 10.

I det här fallet ger vi dock COUNTIF ett intervall för kriterier. Vi använder inga logiska operatorer, vilket innebär att COUNTIF kommer att kontrollera om det är likvärdigt (dvs det beter sig som om vi använde operatoren lika (=)).

Eftersom vi ger COUNTIF ett intervall (även kallat en "array") som innehåller 7 objekt, kommer COUNTIF att returnera en array med 7 objekt som ett resultat. Varje objekt i resultatmatrisen representerar ett antal. I exemplet ser den här arrayen som COUNTIF returnerar ut så här:

(1; 1; 0; 1; 1; 0; 0)

Nu behöver vi helt enkelt lägga till objekten i denna matris, vilket är ett perfekt jobb för SUMPRODUCT. SUMPRODUCT-funktionen är en mångsidig funktion som hanterar arrays naturligt utan någon speciell array-syntax.

Om du ger SUMPRODUCT två eller flera matriser multiplicerar det matriserna tillsammans, summerar resultaten och returnerar det numret. I det här fallet ger vi SUMPRODUCT bara en matris, så det summerar helt enkelt objekten i matrisen och returnerar 4 som resultatet.

Matcha över rader

Om du vill jämföra två områden eller kolumner och vill räkna matchningar på radnivå (dvs. bara räkna matchningar när samma objekt visas i samma position) behöver du en annan formel.

Intressanta artiklar...