Excel-formel: Summa uppslagsvärden med SUMIF -

Generisk formel

=SUMPRODUCT(SUMIF(codes,lookups,values))

Sammanfattning

För att summera värden som hämtats genom en uppslagsoperation kan du använda SUMPRODUCT med SUMIF-funktionen.

I exemplet som visas är formeln i H5:

=SUMPRODUCT(SUMIF(codes,C5:G5,values))

Där koder är det namngivna området J4: J5 och värdena är det namngivna området K4: K5.

Sammanhang

Ibland kanske du vill summera flera värden som hämtats genom en uppslagning. I det här exemplet vill vi summera semestertiden varje vecka baserat på ett kodsystem, där F = en hel dag och H = en halv dag. Om en dag är tom tog det ingen tid.

Utmaningen är att hitta en formel som både slår upp och summerar värdena associerade med F och H.

Förklaring

Kärnan i denna formel är SUMIF, som används för att slå upp rätt värden för F och H. Använda SUMIF för att slå värden är en mer avancerad teknik som fungerar bra när värdena är numeriska, och det finns inga dubbletter i "uppslagstabellen ".

Tricket i det här fallet är att kriterierna för SUMIF inte är ett enda värde utan snarare en rad värden i intervallet C5: G5:

=SUMPRODUCT(SUMIF(codes,C5:G5,values))

Eftersom vi ger SUMIF mer än ett kriterium kommer SUMIF att returnera mer än ett resultat. I exemplet som visas är resultatet av SUMIF följande array:

(1,0,5,0,0,0)

Observera att vi korrekt får 1 för varje "F" och 0,5 för varje "H". Och tomma värden i veckan genererar noll.

Slutligen använder vi SUMPRODUCT för att lägga till värdena i arrayen som returneras av SUMIF. Eftersom det bara finns en enda matris returnerar SUMPRODUCT helt enkelt summan av alla värden.

Intressanta artiklar...