Inhoudsopgave
Deze tutorial legt het verschil uit tussen de functies SUMIF en SUMIFS wat betreft hun syntaxis en gebruik, en geeft een aantal formulevoorbeelden om waarden met meerdere EN / OF-criteria op te tellen in Excel 365, 2021, 2019, 2016, 2013, 2010 en lager.
Zoals iedereen weet, biedt Microsoft Excel een reeks functies om verschillende berekeningen met gegevens uit te voeren. Een paar artikelen geleden hebben we COUNTIF en COUNTIFS verkend, die zijn ontworpen om cellen te tellen op basis van respectievelijk één voorwaarde en meerdere voorwaarden. Vorige week hebben we Excel SUMIF behandeld dat waarden optelt die voldoen aan de opgegeven criteria. Nu is het tijd om de meervoudige versie vanSUMIF - Excel SUMIFS waarmee waarden kunnen worden opgeteld op basis van meerdere criteria.
Degenen die vertrouwd zijn met de SUMIF-functie zouden kunnen denken dat de omzetting naar SUMIFS slechts een extra "S" en een paar extra criteria vergt. Dat lijkt vrij logisch... maar "logisch" is het niet altijd wanneer je te maken hebt met Microsoft : )
Excel SUMIF functie - syntax & gebruik
De SUMIF-functie wordt gebruikt om waarden voorwaardelijk op te tellen op basis van een enkelvoudige criteria We hebben de SUMIF syntaxis in detail besproken in het vorige artikel, en hier is een korte opfrissing.
SUMIF(bereik, criteria, [som_bereik])- reeks - de reeks cellen die volgens uw criteria moeten worden geëvalueerd, vereist.
- criteria - de voorwaarde waaraan voldaan moet worden, vereist.
- som_bereik - de cellen die moeten worden opgeteld als aan de voorwaarde is voldaan, optioneel.
Zoals u ziet, staat de syntaxis van de Excel SUMIF-functie slechts één voorwaarde toe. En toch zeggen we dat Excel SUMIF kan worden gebruikt om waarden met meerdere criteria op te tellen. Hoe kan dat? Door de resultaten van verschillende SUMIF-functies op te tellen en door SUMIF-formules met array-criteria te gebruiken, zoals in de volgende voorbeelden wordt gedemonstreerd.
Excel SUMIFS functie - syntax & gebruik
U gebruikt SUMIFS in Excel om een voorwaardelijke som van waarden vinden op basis van meerdere criteria De SUMIFS-functie werd geïntroduceerd in Excel 2007 en is beschikbaar in alle volgende versies van Excel 2010, 2013, 2016, 2019, 2021 en Excel 365.
Vergeleken met SUMIF is de SUMIFS-syntaxis iets complexer:
SUMIFS(som_bereik, criteria_bereik1, criteria1, [criteria_bereik2, criteria2], ...)De eerste 3 argumenten zijn verplicht, extra reeksen en de bijbehorende criteria zijn facultatief.
som_bereik
- een of meer cellen die moeten worden opgeteld, verplicht. Dit kan een enkele cel zijn, een cellenbereik of een genoemd bereik. Alleen cellen met getallen worden opgeteld; lege en tekstwaarden worden genegeerd.criteria_bereik1
- het eerste bereik dat door de bijbehorende criteria moet worden geëvalueerd, vereist.criteria1
- de eerste voorwaarde waaraan moet worden voldaan, vereist. U kunt de criteria opgeven in de vorm van een getal, logische uitdrukking, celverwijzing, tekst of een andere Excel-functie. U kunt bijvoorbeeld criteria gebruiken als 10, ">=10", A1, "kersen" of TODAY().criteria_bereik2, criteria2, ...
- dit zijn extra bereiken en bijbehorende criteria, optioneel. U kunt maximaal 127 bereik/criteria-paren gebruiken in SUMIFS-formules.
Opmerkingen:
- Om een SUMIFS-formule correct te laten werken, moeten alle criteria_bereik De argumenten moeten dezelfde dimensie hebben als som_bereik d.w.z. hetzelfde aantal rijen en kolommen.
- De SUMIFS-functie werkt met EN-logica, wat betekent dat een cel in het sombereik alleen wordt opgeteld als deze voldoet aan alle opgegeven criteria, d.w.z. dat alle criteria waar zijn voor die cel.
Basis SUMIFS-formule
En laten we nu eens kijken naar de Excel SUMIFS-formule met twee voorwaarden. Stel, u hebt een tabel met de zendingen fruit van verschillende leveranciers. U hebt de namen van het fruit in kolom A, de namen van de leveranciers in kolom B, en de hoeveelheid in kolom C. Wat u wilt is een som berekenen van de bedragen voor een bepaald fruit en een bepaalde leverancier, bijvoorbeeld alle appels geleverd door Piet.
Wanneer je iets nieuws leert, is het altijd een goed idee om met eenvoudige dingen te beginnen. Laten we dus om te beginnen alle argumenten voor onze SUMIFS-formule definiëren:
- som_bereik - C2:C9
- criteria_bereik1 - A2:A9
- criteria1 - "appels"
- criteria_bereik2 - B2:B9
- criteria2 - "Pete"
Voeg nu de bovenstaande parameters samen, en u krijgt de volgende SUMIFS-formule:
=SUMIFS(C2:C9, A2:A9, "appels", B2:B9, "Pete")
Om de formule verder te verfijnen, kunt u de tekstcriteria "appels" en "Piet" vervangen door celverwijzingen. In dat geval hoeft u de formule niet te wijzigen om de hoeveelheid ander fruit van een andere leverancier te berekenen:
=SUMIFS(C2:C9, A2:A9, F1, B2:B9, F2)
Opmerking. Zowel de SUMIF- als de SUMIFS-functie zijn van nature hoofdletterongevoelig. Om ze de hoofdletter van de tekst te laten herkennen, zie Hoofdlettergevoelige SUMIF- en SUMIFS-formule in Excel.
SUMIF vs. SUMIFS in Excel
Omdat het doel van deze zelfstudie is om alle mogelijke manieren te behandelen om waarden op te tellen volgens meerdere voorwaarden, bespreken we formulevoorbeelden met beide functies - Excel SUMIFS en SUMIF met meerdere criteria. Om ze correct te gebruiken, moet u duidelijk begrijpen wat deze twee functies gemeen hebben en waarin ze verschillen.
Terwijl het gemeenschappelijke deel duidelijk is (vergelijkbaar doel en parameters), zijn de verschillen niet zo duidelijk, hoewel zeer essentieel.
Er zijn 4 grote verschillen tussen SUMIF en SUMIFS:
- Aantal voorwaarden SUMIF kan slechts één voorwaarde tegelijk evalueren, terwijl SUMIFS op meerdere criteria kan controleren.
- Syntax Met SUMIF, de som_bereik is het laatste en optionele argument - indien niet gedefinieerd, worden de waarden in de reeks argument worden opgeteld. Met SUMIFS, som_bereik is het eerste en vereiste argument.
- Grootte van de reeksen. In SUMIF formules, som_bereik hoeft niet noodzakelijkerwijs dezelfde grootte en vorm te hebben als reeks zolang u de cel linksboven rechts heeft. In Excel SUMIFS, elke criteria_bereik moet hetzelfde aantal rijen en kolommen bevatten als de som_bereik argument.
Bijvoorbeeld, SUMIF(A2:A9,F1,C2:C18) zal het juiste resultaat opleveren omdat de meest linkse cel in de som_bereik argument (C2) klopt. Excel zal de correctie dus automatisch uitvoeren en zoveel mogelijk kolommen en rijen opnemen in som_bereik zoals er zijn in reeks .
Een SUMIFS-formule met bereiken van ongelijke grootte geeft een #VALUE! foutmelding.
- Beschikbaarheid SUMIF is beschikbaar in alle Excel-versies, van 365 tot en met 2000. SUMIFS is beschikbaar in Excel 2007 en hoger.
Goed, genoeg strategie (d.w.z. theorie), laten we beginnen met de tactiek (d.w.z. formulevoorbeelden : )
Hoe SUMIFS gebruiken in Excel - formulevoorbeelden
Zojuist bespraken wij een eenvoudige SUMIFS-formule met twee tekstcriteria. Op dezelfde manier kunt u Excel SUMIFS gebruiken met meerdere criteria uitgedrukt in getallen, datums, logische expressies en andere Excel-functies.
Voorbeeld 1. Excel SUMIFS met vergelijkingsoperatoren
Stel dat u in onze tabel met fruitleveranciers alle leveringen van Mike met Qty. 200 of meer wilt optellen. Daartoe gebruikt u de vergelijkingsoperator "groter dan of gelijk aan" (>=) in criteria2 en krijgt u de volgende SUMIFS-formule:
=SUMIFS(C2:C9,B2:B9,"Mike",C2:C9,">=200")
Let op: in Excel SUMIFS-formules moeten logische uitdrukkingen met vergelijkingsoperatoren altijd tussen dubbele aanhalingstekens ("") worden geplaatst.
We hebben alle mogelijke vergelijkingsoperatoren in detail behandeld bij de bespreking van de Excel SUMIF functie, dezelfde operatoren kunnen worden gebruikt in SUMIFS criteria. Bijvoorbeeld, de volgende formule geeft de som van alle waarden in cellen C2:C9 die groter dan of gelijk aan 200 en kleiner dan of gelijk aan 300 zijn.
=SUMIFS(C2:C9, C2:C9,">=200", C2:C9,"<=300")
Voorbeeld 2. Excel SUMIFS gebruiken met datums
Wanneer u waarden met meerdere criteria wilt optellen op basis van de huidige datum, gebruikt u de functie TODAY() in uw SUMIFS-criteria, zoals hieronder wordt gedemonstreerd. De volgende formule telt waarden in kolom D op als een overeenkomstige datum in kolom C binnen de laatste 7 dagen valt, inclusief vandaag:
=SUMIFS(D2:D10, C2:C10,">="&TODAY()-7, C2:C10,"<="&TODAY())
Opmerking: Wanneer u een andere Excel-functie gebruikt in combinatie met een logische operator in de criteria, moet u de ampersand (&) gebruiken om een reeks aan elkaar te koppelen, bijvoorbeeld "<="&TODAY().
Op vergelijkbare wijze kunt u de Excel SUMIF-functie gebruiken om waarden in een bepaald datumbereik bij elkaar op te tellen. De volgende SUMIFS-formule telt bijvoorbeeld de waarden in de cellen C2:C9 op als een datum in kolom B tussen 1 okt-2014 en 31 okt-2014 valt.
=SUMIFS(C2:C9, B2:B9, ">=10/1/2014", B2:B9, "<=10/31/2014")
Hetzelfde resultaat kan worden bereikt door het verschil van twee SUMIF-functies te berekenen, zoals gedemonstreerd in dit voorbeeld - Hoe SUMIF gebruiken om waarden in een bepaald datumbereik op te tellen. Excel SUMIFS is echter veel eenvoudiger en begrijpelijker, nietwaar?
Voorbeeld 3. Excel SUMIFS met lege en niet lege cellen
Bij het analyseren van rapporten en andere gegevens moet u vaak waarden optellen die overeenkomen met lege of niet-lege cellen.
Criteria | Beschrijving | Formule Voorbeeld | |
---|---|---|---|
Blanco cellen | "=" | Som waarden op die overeenkomen met lege cellen die absoluut niets bevatten - geen formule, geen string van nul lengte. | =SUMIFS(C2:C10, A2:A10, "=", B2:B10, "=") |
Tel de waarden in de cellen C2:C10 bij elkaar op als de overeenkomstige cellen in de kolommen A en B absoluut leeg zijn.
Tel de waarden in de cellen C2:C10 op met dezelfde voorwaarden als de bovenstaande formule, maar inclusief lege tekenreeksen.
Tel de waarden in de cellen C2:C10 op als de overeenkomstige cellen in de kolommen A en B niet leeg zijn, met inbegrip van cellen met lege tekenreeksen.
of
SUM / LEN
=SUM((C2:C10) * (LEN(A2:A10)>0)*(LEN(B2:B10)>0))
Tel de waarden in de cellen C2:C10 op als de overeenkomstige cellen in de kolommen A en B niet leeg zijn; cellen met strings van nul lengte worden niet opgenomen.
Laten we nu eens kijken hoe u een SUMIFS-formule met "blanco" en "nietblanco" criteria kunt gebruiken voor echte gegevens.
Stel, u hebt een besteldatum in kolom B, leveringsdatum in kolom C en aantal in kolom D. Hoe vindt u het totaal van de producten die nog niet geleverd zijn? Dat wil zeggen, u wilt de som weten van de waarden die overeenkomen met niet-lege cellen in kolom B en lege cellen in kolom C.
De oplossing is het gebruik van de SUMIFS-formule met 2 criteria:
=SUMIFS(D2:D10, B2:B10,"", C2:C10,"=")
Excel SUMIF gebruiken met meerdere OF-criteria
Zoals in het begin van deze tutorial is opgemerkt, is de SUMIFS-functie ontworpen met EN-logica. Maar wat als u waarden moet optellen met meerdere OF-criteria, d.w.z. wanneer aan ten minste één van de voorwaarden is voldaan?
Voorbeeld 1. SUMIF + SUMIF
De eenvoudigste oplossing is om de resultaten van verschillende SUMIF-functies op te tellen. De volgende formule laat bijvoorbeeld zien hoe u het totaal van de door Mike en John geleverde producten kunt vinden:
=SUMIF(C2:C9,"Mike",D2:D9) + SUMIF(C2:C9,"John",D2:D9)
Zoals u ziet, telt de eerste SUMIF-functie de hoeveelheden op die overeenkomen met "Mike", de andere SUMIF-functie geeft de bedragen met betrekking tot "John" en vervolgens telt u deze 2 getallen op.
Voorbeeld 2. SUM & SUMIF met een matrixargument
De bovenstaande oplossing is heel eenvoudig en kan de klus snel klaren als er maar een paar criteria zijn. Maar een SUMIF + SUMIF formule kan enorm uitdijen als u waarden met meerdere OF-voorwaarden wilt optellen. In dat geval is een betere aanpak het gebruik van een matrixcriteria argument in de SUMIF-functie. Laten we deze aanpak nu onderzoeken.
U kunt beginnen met het opsommen van al uw voorwaarden, gescheiden door komma's, en dan de resulterende door komma's gescheiden lijst tussen {curly brackets} zetten, wat technisch gezien een array wordt genoemd.
In het vorige voorbeeld, als u de producten geleverd door John, Mike en Pete wilt optellen, ziet uw array er uit als {"John","Mike","Pete"}. En de volledige SUMIF-functie is SUMIF(C2:C9, {"John","Mike","Pete"},D2:D9)
.
Het array-argument bestaande uit 3 waarden dwingt uw SUMIF-formule om drie afzonderlijke resultaten te geven, maar omdat we de formule in een enkele cel schrijven, zou deze alleen het eerste resultaat geven - d.w.z. het totaal van de door John geleverde producten. Om deze array-criteria-benadering te laten werken, moet u nog een klein trucje gebruiken - sluit uw SUMIF-formule in in een SUM-functie, zoals dit:
=SUM(SUMIF(C2:C9, {"John","Mike","Pete"} , D2:D9))
Zoals u ziet, maakt een matrixcriterium de formule veel compacter dan SUMIF + SUMIF, en kunt u in de matrix zoveel waarden toevoegen als u wilt.
Deze aanpak werkt zowel met getallen als met tekstwaarden. Als u bijvoorbeeld in plaats van de namen van de leveranciers in kolom C, leverancier-ID's had zoals 1, 2, 3 enz. dan zou uw SUMIF-formule er ongeveer zo uitzien:
=SUM(SUMIF(C2:C9, {1,2,3} , D2:D9))
In tegenstelling tot tekstwaarden hoeven getallen niet tussen dubbele aanhalingstekens te staan in array-argumenten.
Voorbeeld 3. SUMPRODUCT & SUMIF
Indien u er de voorkeur aan geeft de criteria in enkele cellen op te sommen in plaats van ze rechtstreeks in de formule op te geven, kunt u SUMIF gebruiken in combinatie met de functie SUMPRODUCT, die de componenten in de gegeven matrices met elkaar vermenigvuldigt en de som van die producten oplevert.
=SUMPRODUCT(SUMIF(C2:C9, G2:G4, D2:D9))
Waarbij G2:G4 de cellen zijn die uw criteria bevatten, de namen van de leveranciers in ons geval, zoals geïllustreerd in de onderstaande schermafbeelding.
Maar natuurlijk belet niets u om de waarden in een arraycriteria van uw SUMIF-functie op te sommen als u dat wilt:
=SUMPRODUCT(SUMIF(C2:C9, {"Mike","John","Pete"}, D2:D9))
Het resultaat van beide formules is identiek aan wat u in de schermafbeelding ziet:
Excel SUMIFS met meerdere OR-criteria
Indien u in Excel waarden voorwaardelijk wilt optellen, niet alleen met meerdere OF-voorwaarden, maar met meerdere sets van voorwaarden, zult u SUMIFS moeten gebruiken in plaats van SUMIF. De formules zullen sterk lijken op wat we zojuist hebben besproken.
Zoals gewoonlijk kan een voorbeeld helpen om het punt beter te illustreren. Laten we in onze tabel van fruitleveranciers de leveringsdatum (kolom E) toevoegen en de totale hoeveelheid vinden die Mike, John en Pete in oktober hebben geleverd.
Voorbeeld 1. SUMIFS + SUMIFS
De formule van deze aanpak bevat veel herhaling en ziet er omslachtig uit, maar is gemakkelijk te begrijpen en werkt vooral : )
=SUMIFS(D2:D9,C2:C9, "Mike", E2:E9,">=10/1/2014", E2:E9,"<=10/31/2014") +
SUMIFS(D2:D9, C2:C9, "John", E2:E9, ">=10/1/2014", E2:E9, "<=10/31/2014") +
SUMIFS(D2:D9, C2:C9, "Pete", E2:E9, ">=10/1/2014" ,E2:E9, "<=10/31/2014")
Zoals u ziet, schrijft u een aparte SUMIFS-functie voor elk van de leveranciers en neemt u twee voorwaarden op - gelijk aan of groter dan 1 okt (">=10/1/2014",) en kleiner dan of gelijk aan 31 okt ("<=10/31/2014"), en vervolgens telt u de resultaten op.
Voorbeeld 2. SUM & SUMIFS met een array-argument
Ik heb geprobeerd de essentie van deze aanpak uit te leggen in het SUMIF-voorbeeld, dus nu kunnen we gewoon die formule kopiëren, de volgorde van de argumenten wijzigen (zoals u zich herinnert is die verschillend in SUMIF en SUMIFS) en extra criteria toevoegen. De resulterende formule is compacter dan SUMIFS + SUMIFS:
=SUM(SUMIFS(D2:D9,C2:C9, {"Mike", "John", "Pete"}, E2:E9,">=10/1/2014", E2:E9,"<=10/31/2014"))
Het resultaat van deze formule is precies hetzelfde als in de schermafbeelding hierboven.
Voorbeeld 3. SUMPRODUCT & SUMIFS
Zoals u zich herinnert, verschilt de SUMPRODUCT-aanpak van de vorige twee in die zin dat u elk van uw criteria in een aparte cel invoert in plaats van ze rechtstreeks in de formule op te geven. In het geval van meerdere criteriasets zal de SUMPRODUCT-functie niet volstaan en zult u ook ISNUMBER en MATCH moeten gebruiken.
Dus, in de veronderstelling dat de namen van de benodigdheden in de cellen H1:H3 staan, de begindatum in cel H4 en de einddatum in cel H5, krijgt onze SUMPRODUCT-formule de volgende vorm:
=SUMPRODUCT(--(E2:E9>=H4), --(E2:E9<=H5), --(ISNUMBER(MATCH(C2:C9, H1:H3,0))), D2:D9)
Veel mensen vragen zich af waarom in SUMPRODUCT-formules een dubbel streepje (--) wordt gebruikt. Het punt is dat Excel SUMPRODUCT alle andere dan numerieke waarden negeert, terwijl de vergelijkingsoperatoren in onze formule Booleaanse waarden opleveren (TRUE / FALSE), die niet numeriek zijn. Om deze Booleaanse waarden om te zetten in 1's en 0's gebruik je het dubbele minteken, dat technisch gezien de dubbele unaire operator wordt genoemd. De eerste unaire forceertTRUE/FALSE tot respectievelijk -1/0. De tweede unary ontkent de waarden, d.w.z. keert het teken om en maakt er +1 en 0 van, wat de SUMPRODUCT-functie kan begrijpen.
Ik hoop dat de bovenstaande uitleg duidelijk is. En zelfs als dat niet zo is, onthoud dan deze vuistregel - gebruik de dubbele unaire operator (--) wanneer u vergelijkingsoperatoren gebruikt in uw SUMPRODUCT-formules.
Excel SUM gebruiken in matrixformules
Zoals u zich herinnert, heeft Microsoft de SUMIFS-functie geïmplementeerd in Excel 2007. Als iemand nog steeds Excel 2003, 2000 of eerder gebruikt, zult u een SUM-arrayformule moeten gebruiken om waarden met meerdere EN-criteria bij elkaar op te tellen. Uiteraard werkt deze aanpak ook in moderne versies van Excel 2013 - 2007, en kan deze worden beschouwd als een ouderwetse tegenhanger van de SUMIFS-functie.
In de hierboven besproken SUMIF-formules hebt u al array-argumenten gebruikt, maar een array-formule is iets anders.
Voorbeeld 1. Som met meerdere EN-criteria in Excel 2003 en eerder
Laten we teruggaan naar het allereerste voorbeeld, waar we een som van bedragen met betrekking tot een bepaalde vrucht en leverancier hebben gevonden:
Zoals u al weet, kan deze taak gemakkelijk worden uitgevoerd met een gewone SUMIFS-formule:
=SUMIFS(C2:C9, A2:A9, "appels", B2:B9, "Pete")
Laten we nu eens kijken hoe dezelfde taak kan worden uitgevoerd in vroege "SUMIFS-vrije" versies van Excel. Eerst schrijft u alle voorwaarden waaraan moet worden voldaan op in de vorm van bereik="voorwaarde". In dit voorbeeld hebben we twee bereik/voorwaarde-paren:
Voorwaarde 1: A2:A9="appels".
Voorwaarde 2: B2:B9="Pete".
Vervolgens schrijft u een SUM-formule die al uw bereik-/voorwaardeparen "vermenigvuldigt", elk tussen haakjes. De laatste vermenigvuldiger is het sombereik, C2:C9 in ons geval:
=SUM((A2:A9="appels") * ( B2:B9="Piet") * ( C2:C9))
Zoals geïllustreerd in de onderstaande schermafbeelding, werkt de formule perfect in de nieuwste Excel 2013 versie.
Opmerking: wanneer u een matrixformule invoert, moet u op Ctrl + Shift + Enter drukken. Zodra u dit doet, wordt uw formule omsloten door {curly braces}, wat een visuele indicatie is dat een matrixformule correct is ingevoerd. Als u probeert de accolades handmatig in te typen, wordt uw formule omgezet in een tekststring, en dat werkt niet.
Voorbeeld 2. SUM array formules in moderne Excel versies
Zelfs in moderne versies van Excel mag de kracht van de SUM-functie niet worden onderschat. De SUM-arrayformule is niet louter gymnastiek van de geest, maar heeft een praktische waarde, zoals blijkt uit het volgende voorbeeld.
Stel, u hebt twee kolommen, B en C, en u moet tellen hoeveel keer kolom C groter is dan kolom B, wanneer een waarde in kolom C groter of gelijk is aan 10. Een onmiddellijke oplossing die bij u opkomt is het gebruik van de SUM-arrayformule:
=SUM((C1:C10>=10) * (C1:C10>B1:B10))
Zie je geen praktische toepassing van de bovenstaande formule? Denk er eens op een andere manier over na : )
Stel, u hebt de bestellijst zoals in de schermafbeelding hieronder en u wilt weten hoeveel producten niet volledig zijn geleverd op een bepaalde datum. Vertaald in de taal van Excel hebben we de volgende voorwaarden:
Voorwaarde 1: een waarde in kolom B (Geordende items) is groter dan 0
Voorwaarde 2: Een waarde in kolom C (Geleverd) in minder dan in kolom B
Voorwaarde 3: een datum in kolom D (vervaldatum) is lager dan 11/1/2014.
Als je de drie bereik/voorwaarde-paren samenvoegt, krijg je de volgende formule:
=SUM((B2:B10>=0)*(B2:B10>C2:C10)*(D2:D10
De in deze handleiding besproken formulevoorbeelden hebben slechts een tipje van de sluier opgelicht van wat de Excel SUMIFS- en SUMIF-functies werkelijk kunnen doen. Maar hopelijk hebben ze u in de juiste richting gestuurd en kunt u nu waarden in uw Excel-werkmappen optellen, ongeacht het aantal ingewikkelde voorwaarden waarmee u rekening moet houden.