SOMPRODUCT
SUMPRODUCT in Engelstalige Excel
Vermenigvuldigt de bij elkaar horende items van twee of meer bereiken en telt de producten op, waardoor je er ook voorwaardelijke sommen en gewogen gemiddelden mee maakt.
Laatst bijgewerkt: 13 oktober 2026
| Rij | A | B | C | D | E |
|---|---|---|---|---|---|
| 1 | Artikel | Aantal | Kostprijs | Voorraadwaarde | |
| 2 | Koperen buis 15 mm | 240240 | €4.85€ 4,85 | €9,739.50€ 9.739,50=SOMPRODUCT(B2:B5, C2:C5)=SOMPRODUCT(B2:B5; C2:C5) | |
| 3 | Boiler 80 L | 1212 | €389.00€ 389,00 | ||
| 4 | Radiatorkraan | 150150 | €12.40€ 12,40 | ||
| 5 | Thermostaat | 3535 | €58.50€ 58,50 |
Veeg opzij om alle kolommen te zien
Resultaat: €9,739.50€ 9.739,50
=SOMPRODUCT(B2:B5,C2:C5)
=SOMPRODUCT(B2:B5;C2:C5)
Wat SOMPRODUCT doet en wanneer je het gebruikt
Wat het doet: het vermenigvuldigt bijbehorende items uit twee of meer bereiken en telt de producten op, bijvoorbeeld aantal maal kostprijs over een voorraadlijst.
Wanneer je het gebruikt: voor totalen die per rij een vermenigvuldiging nodig hebben, gewogen gemiddelden en voorwaardelijke sommen die SOMMEN.ALS niet aankan (OF tussen criteria, berekende voorwaarden, hoofdlettergevoelige vergelijkingen). Bij gewone EN-voorwaarden is SOMMEN.ALS sneller.
De drie grootste voordelen:
- Geen hulpkolom: vermenigvuldig in de formule zelf in plaats van eerst een kolom met producten te maken.
- Voorwaarden die SOMMEN.ALS niet aankan: OF, berekende waarden en hoofdlettergevoelige vergelijkingen met GELIJK.
- Geen matrixinvoer: werkt in elke Excel-versie zonder Ctrl+Shift+Enter.
Hoe Excel de functie berekent
Excel werkt in vier stappen:
- het zet elk argument om in een matrix: van een bereik neemt Excel de waarden, en een expressie zoals (A2:A7=E2) wordt voor elke rij berekend
- het controleert of alle matrices evenveel rijen en kolommen hebben; is dat niet zo, dan is het resultaat #WAARDE!
- het vermenigvuldigt positie 1 van alle matrices, positie 2 van alle matrices, enzovoort; items die tekst, leeg of WAAR/ONWAAR zijn, tellen op dat moment als 0
- het telt al die producten op tot één getal
Omdat WAAR en ONWAAR hier als 0 tellen, moet een voorwaardenmatrix eerst met -- of een vermenigvuldiging in enen en nullen veranderen voordat hij iets doet.
Let op: Een vergelijking zoals (A2:A7=E2) in een apart argument geeft WAAR en ONWAAR, en die telt SOMPRODUCT als 0, dus het resultaat is 0 terwijl meerdere rijen overeenkomen. Zet ze om met een dubbel minteken, --(A2:A7=E2), of vermenigvuldig: (A2:A7=E2)*B2:B7.
Denkmodel
Een kassabon: elke regel is aantal maal prijs, en onderaan worden de regels opgeteld. Een voorwaarde is een kolom met enen en nullen die regels aan- of uitzet voordat het optellen begint.
Begrippen op deze pagina: criteria, matrix, argument, bereik
SOMPRODUCT(matrix1,[matrix2], ...)
SOMPRODUCT(matrix1;[matrix2]; ...)
| Argument | Soort | Betekenis |
|---|---|---|
matrix1 | Verplicht | Het eerste bereik of de eerste matrix; alle andere moeten even groot zijn. |
matrix2 | Optioneel | Meer matrices, positie voor positie vermenigvuldigd met matrix1. |
Geeft terug:Eén getal: de som van de producten per positie
Formules gebruiken komma's (,) tussen de argumenten, zoals in de Engelse Excel. Formules gebruiken puntkomma's (;) tussen de argumenten, zoals in de Nederlandse Excel. Formules gebruiken puntkomma's (;) tussen de argumenten, zoals in de Nederlandse Excel; de Engelse Excel gebruikt komma's (,).
Uitgewerkte voorbeelden
Beginner
Voorraadwaarde uit aantallen en kostprijzen
Je controleert Veldhuis Installatie BV. De voorraadlijst per 31 december 2025 toont per artikel een aantal en een kostprijs, en het grootboek toont rekening 3000 Voorraad voor 9,800.009.800,00. Je wilt de waarde van de lijst in één cel, zonder eerst een hulpkolom met regelwaarden te maken, zodat je het verschil kunt toelichten.
| Rij | A | B | C | D | E | F |
|---|---|---|---|---|---|---|
| 1 | Artikel | Aantal | Kostprijs | Voorraadwaarde | ||
| 2 | Koperen buis 15 mm | 240240 | €4.85€ 4,85 | €9,739.50€ 9.739,50=SOMPRODUCT(B2:B5, C2:C5)=SOMPRODUCT(B2:B5; C2:C5) | ||
| 3 | Boiler 80 L | 1212 | €389.00€ 389,00 | |||
| 4 | Radiatorkraan | 150150 | €12.40€ 12,40 | |||
| 5 | Thermostaat | 3535 | €58.50€ 58,50 | |||
| 6 |
Veeg opzij om alle kolommen te zien
Formule in E2
=SOMPRODUCT(B2:B5,C2:C5)
=SOMPRODUCT(B2:B5;C2:C5)
Resultaat: €9,739.50€ 9.739,50
Stap voor stap
- In matrix1,
B2:B5, staan de vier aantallen 240, 12, 150 en 35, in matrix2,C2:C5, de vier kostprijzen 4,85, 389, 12,4 en 58,5. Beide zijn 4 rijen bij 1 kolom, dus de afmetingen kloppen. - Excel vermenigvuldigt eerst de eerste items: 240 × 4,85 = 1,1641.164. Dan de tweede: 12 × 389 = 4,6684.668.
- Dan de derde en de vierde: 150 × 12,4 = 1,8601.860 en 35 × 58,5 = 2,047.52.047,5.
- Daarna telt Excel de vier producten op: 1,1641.164 + 4,6684.668 + 1,8601.860 + 2,047.52.047,5 = 9,739.59.739,5. Dat ene getal is het resultaat in
E2. - Vergelijk met het grootboek: 9,800.009.800,00 - 9,739.509.739,50 = 60,50. Dat is het verschil waarover je de cliënt om toelichting vraagt.
Let op: Selecteer je per ongeluk C2:C6, dan passen de bereiken niet meer bij elkaar: het resultaat is #WAARDE!, geen verkeerd totaal. Die foutwaarde is de controle op afmetingen van SOMPRODUCT die zijn werk doet.
Meer over dit voorbeeld: waarom het werkt, 1 variant
Waarom het werkt
De twee bereiken zijn alleen door hun positie aan elkaar gekoppeld: het eerste aantal hoort bij de eerste kostprijs omdat ze in dezelfde rij staan. SOMPRODUCT doet de vermenigvuldiging per rij die een hulpkolom zou doen, en de optelling die een SOM over die kolom zou doen, in één stap.
Varianten
=SOM(B2:B5 * C2:C5)
=SOM(B2:B5 * C2:C5)
Hetzelfde totaal in Excel 2021 of Microsoft 365, waar SOM de matrixvermenigvuldiging zelf afhandelt. In Excel 2019 en eerder moet je dan Ctrl+Shift+Enter gebruiken; SOMPRODUCT heeft dat nooit nodig.
Halfgevorderd
Herberekende btw per dagboek, met een streepje als btw-percentage
Je herberekent de btw op het verkoop- en inkoopdagboek van een XAF-export: een nettobedrag en het btw-percentage van elke regel. Je wilt de herberekende btw per dagboek naast een kort lijstje dagboekcodes, met één formule die je naar beneden kopieert, en die vergelijken met de btw-aangifte.
Eén regel zonder btw-code heeft een liggend streepje in de kolom met het percentage, en dat mag het totaal niet breken.
| Rij | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 1 | Dagboek | Nettobedrag | Btw-percentage | Dagboek | Herberekende btw | ||
| 2 | VRK | €1,000.00€ 1.000,00 | 21%21% | VRK | €282.00€ 282,00=SOMPRODUCT(--($A$2:$A$7 = E2), $B$2:$B$7, $C$2:$C$7)=SOMPRODUCT(--($A$2:$A$7 = E2); $B$2:$B$7; $C$2:$C$7) | ||
| 3 | INK | €2,400.00€ 2.400,00 | 21%21% | INK | |||
| 4 | VRK | €500.00€ 500,00 | - | ||||
| 5 | VRK | €800.00€ 800,00 | 9%9% | ||||
| 6 | INK | €300.00€ 300,00 | 9%9% | ||||
| 7 | INK | €1,500.00€ 1.500,00 | 21%21% | ||||
| 8 |
Veeg opzij om alle kolommen te zien
Formule in F2
=SOMPRODUCT(--($A$2:$A$7 = E2),$B$2:$B$7, $C$2:$C$7)
=SOMPRODUCT(--($A$2:$A$7 = E2);$B$2:$B$7; $C$2:$C$7)
Resultaat: €282.00€ 282,00
Stap voor stap
- Excel berekent eerst de vergelijking: elke cel van
$A$2:$A$7tegenE2(VRK). Dat geeft WAAR, ONWAAR, WAAR, WAAR, ONWAAR, ONWAAR. - Het dubbele minteken maakt van WAAR een 1 en van ONWAAR een 0: {1; 0; 1; 1; 0; 0}. Zonder dat teken zou SOMPRODUCT elke WAAR als 0 tellen en voor elk dagboek 0 teruggeven.
- SOMPRODUCT vermenigvuldigt de drie matrices positie voor positie. Rij 2: 1 × 1,0001.000 × 0,21 = 210. Rijen 3, 6 en 7 hebben een 0 in de eerste matrix, dus die geven 0, wat hun bedrag ook is.
- Rij 4 is VRK, maar het btw-percentage is de tekst
-. Omdat de percentages een apart argument zijn, telt SOMPRODUCT die tekst als 0: 1 × 500 × 0 = 0. Rij 5: 1 × 800 × 0,09 = 72. - De producten tellen op tot 210 + 0 + 72 = 282, de herberekende btw op het verkoopdagboek in
F2. - Kopieer
F2naarF3. De $-tekens houden de drie gegevensbereiken vast en alleenE2schuift op naarE3(INK): 2,4002.400 × 0,21 + 300 × 0,09 + 1,5001.500 × 0,21 = 504 + 27 + 315 = 846.
Let op: Doordat tekst als 0 telt, valt ook een btw-percentage dat als tekst is geïmporteerd (0,21 met een apostrof ervoor) stilletjes uit de herberekening. Lijkt de herberekende btw te laag, controleer de kolom met percentages dan met ISGETAL.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant
Waarom het werkt
De voorwaarde wordt een kolom met enen en nullen die hele rijen aan- of uitzet voordat er vermenigvuldigd wordt. Doordat bedragen en percentages aparte argumenten zijn en niet met * worden vermenigvuldigd, kan het streepje geen kwaad: in de vorm met puntkomma's telt SOMPRODUCT tekst als 0, terwijl 500 * "-" binnen de formule #WAARDE! zou geven.
Meer om op te letten
- Schrijf je de formule als SOMPRODUCT(($A$2:$A$7 = E2) * $B$2:$B$7 * $C$2:$C$7), dan geeft het streepje #WAARDE! voor elk dagboek, omdat de vermenigvuldiging plaatsvindt voordat SOMPRODUCT de tekst kan overslaan.
Varianten
=SOMPRODUCT(($A$2:$A$7 = E2) * 1,$B$2:$B$7, $C$2:$C$7)
=SOMPRODUCT(($A$2:$A$7 = E2) * 1;$B$2:$B$7; $C$2:$C$7)
Vermenigvuldigen met 1 zet WAAR en ONWAAR om in 1 en 0, net als het dubbele minteken (--). Kies de vorm die je collega's het best kunnen lezen; het resultaat is dezelfde 282.
Gevorderd
Omzetboekingen uit memoriaal- of bankdagboek
Bij de journaalposttest wil je het totaal van de boekingen op rekening 8000 Omzet die uit het memoriaal (MEM) of het bankdagboek (BNK) komen, omdat omzet normaal uit het verkoopdagboek VRK komt.
SOMMEN.ALS combineert zijn criteria alleen met EN, dus 'MEM of BNK, en rekening 8000' vraagt om twee opgetelde SOMMEN.ALS of om één SOMPRODUCT die de twee dagboektests optelt. De dagboeken en de rekening staan in invoercellen, zodat je ze kunt wijzigen.
| Rij | A | B | C | D | E | F | G | H |
|---|---|---|---|---|---|---|---|---|
| 1 | Boekstuk | Dagboek | Rekening | Bedrag | Dagboek 1 | MEM | ||
| 2 | 25-0401 | VRK | 80008000 | €12,500.00€ 12.500,00 | Dagboek 2 | BNK | ||
| 3 | 25-0402 | MEM | 80008000 | €4,800.00€ 4.800,00 | Rekening | €8,000.00€ 8.000,00 | ||
| 4 | 25-0403 | BNK | 11001100 | €3,200.00€ 3.200,00 | Totaal | €8,800.00€ 8.800,00=SOMPRODUCT(((B2:B8 = G1) + (B2:B8 = G2)) * (C2:C8 = G3), D2:D8)=SOMPRODUCT(((B2:B8 = G1) + (B2:B8 = G2)) * (C2:C8 = G3); D2:D8) | ||
| 5 | 25-0404 | MEM | 45004500 | €950.00€ 950,00 | ||||
| 6 | 25-0405 | BNK | 80008000 | €1,750.00€ 1.750,00 | ||||
| 7 | 25-0406 | VRK | 80008000 | €9,300.00€ 9.300,00 | ||||
| 8 | 25-0407 | MEM | 80008000 | €2,250.00€ 2.250,00 | ||||
| 9 |
Veeg opzij om alle kolommen te zien
Formule in G4
=SOMPRODUCT(((B2:B8 = G1) + (B2:B8 = G2)) * (C2:C8 = G3),D2:D8)
=SOMPRODUCT(((B2:B8 = G1) + (B2:B8 = G2)) * (C2:C8 = G3);D2:D8)
Resultaat: €8,800.00€ 8.800,00
Stap voor stap
- Excel berekent eerst de binnenste tests. (B2:B8 = G1) vergelijkt elk dagboek met MEM: {0; 1; 0; 1; 0; 0; 1} zodra het rekenwerk WAAR in 1 verandert. (B2:B8 = G2) vergelijkt met BNK: {0; 0; 1; 0; 1; 0; 0}.
- De + telt de twee matrices positie voor positie op: {0; 1; 1; 1; 1; 0; 1}. Optellen is de OF: een rij telt mee als hij MEM of BNK is. Een rij kan niet allebei zijn, dus geen enkele positie komt boven 1.
- (C2:C8 = G3) vergelijkt de rekening met 8000: {1; 1; 0; 0; 1; 1; 1}. De * vermenigvuldigt dat met de OF-matrix: {0; 1; 0; 0; 1; 0; 1}. Vermenigvuldigen is de EN: beide moeten 1 zijn.
- SOMPRODUCT vermenigvuldigt die matrix nu met
D2:D8en telt op: 1 × 4,8004.800 + 1 × 1,7501.750 + 1 × 2,2502.250 = 8,8008.800. Boekstuk25-0403(BNK, rekening 1100) en25-0404(MEM, rekening 4500) zijn door de rekeningtest uitgezet. - Zet
G3op 4500 en het resultaat wordt 950: dezelfde OF, een andere EN.
Let op: Typ je ook MEM in G2, dan overlappen de twee tests: MEM-rijen krijgen 1 + 1 = 2, en het resultaat wordt stilletjes 2 × 7,0507.050 = 14,10014.100 in plaats van 7,0507.050. Zet het OF-deel in ((...) > 0) zodra beide termen waar kunnen zijn, bijvoorbeeld als ze verschillende kolommen testen.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 2 varianten
Waarom het werkt
In rekenwerk is WAAR 1 en ONWAAR 0, dus + werkt als OF en * als EN, zolang de OF-termen voor één rij niet allebei waar kunnen zijn. De uiteindelijke matrix met enen en nullen is een masker: SOMPRODUCT vermenigvuldigt die met de bedragen en telt alleen de rijen op die het masker doorlaat.
Meer om op te letten
- Is een dagboekcode geëxporteerd als 'MEM ' met een spatie erachter, dan vindt = geen overeenkomst en valt die boeking zonder foutmelding weg. SPATIES.WISSEN op de kolom haalt de spatie weg.
Varianten
=SOMMEN.ALS(D2:D8,B2:B8, G1, C2:C8, G3) + SOMMEN.ALS(D2:D8, B2:B8, G2, C2:C8, G3)
=SOMMEN.ALS(D2:D8;B2:B8; G1; C2:C8; G3) + SOMMEN.ALS(D2:D8; B2:B8; G2; C2:C8; G3)
Twee keer SOMMEN.ALS, één per dagboek, opgeteld: 7,0507.050 + 1,7501.750 = 8,8008.800. Sneller in grote tabellen en leesbaar voor iedereen die SOMMEN.ALS kent, maar elke extra OF-waarde betekent nog een SOMMEN.ALS.
=SOMPRODUCT((((B2:B8 = G1) + (B2:B8 = G2)) > 0) * (C2:C8 = G3),D2:D8)
=SOMPRODUCT((((B2:B8 = G1) + (B2:B8 = G2)) > 0) * (C2:C8 = G3);D2:D8)
De veilige OF: > 0 maakt van elk aantal overeenkomsten een 1, zodat overlappende voorwaarden een rij niet kunnen verdubbelen.
ExpertExcel 2021 of nieuwer (Dit voorbeeld vereist Excel 2021 of nieuwer)
Gewogen betaaltermijn die openstaande facturen overslaat
Uit de debiteurenlijst wil je het gemiddelde aantal dagen dat een klant erover doet om te betalen, gewogen naar factuurbedrag, zodat een grote factuur zwaarder telt dan een kleine.
Facturen die nog openstaan hebben nog geen betaaldatum, dus hun lege dagen mogen niet als 0 tellen, en een klant zonder betaalde facturen moet een melding tonen in plaats van #DEEL/0!. De formule gebruikt LET, zodat elke stap een naam heeft.
| Rij | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 1 | Relatie | Factuurbedrag | Dagen tot betaling | Relatie | D1001 | ||
| 2 | D1001 | €12,000.00€ 12.000,00 | 3030 | Gewogen dagen | 43.8343,83=LET( behoud, (A2:A8 = F1) * ISGETAL(C2:C8), gewichten, behoud * B2:B8, punten, SOMPRODUCT(gewichten, C2:C8), ALS(SOM(gewichten) = 0, "Geen betaalde facturen", punten / SOM(gewichten)) )=LET( behoud; (A2:A8 = F1) * ISGETAL(C2:C8); gewichten; behoud * B2:B8; punten; SOMPRODUCT(gewichten; C2:C8); ALS(SOM(gewichten) = 0; "Geen betaalde facturen"; punten / SOM(gewichten)) ) | ||
| 3 | D1002 | €8,000.00€ 8.000,00 | 4545 | ||||
| 4 | D1001 | €3,000.00€ 3.000,00 | |||||
| 5 | D1001 | €25,000.00€ 25.000,00 | 6060 | ||||
| 6 | D1002 | €15,000.00€ 15.000,00 | 3838 | ||||
| 7 | D1001 | €10,000.00€ 10.000,00 | 2020 | ||||
| 8 | D1003 | €6,000.00€ 6.000,00 | 9090 | ||||
| 9 |
Veeg opzij om alle kolommen te zien
Formule in F2
=LET( behoud,(A2:A8 = F1) * ISGETAL(C2:C8), gewichten, behoud * B2:B8, punten, SOMPRODUCT(gewichten, C2:C8), ALS(SOM(gewichten) = 0, "Geen betaalde facturen", punten / SOM(gewichten)) )
=LET( behoud;(A2:A8 = F1) * ISGETAL(C2:C8); gewichten; behoud * B2:B8; punten; SOMPRODUCT(gewichten; C2:C8); ALS(SOM(gewichten) = 0; "Geen betaalde facturen"; punten / SOM(gewichten)) )
Resultaat: 43.8343,83
Stap voor stap
- behoud vergelijkt
A2:A8metF1(D1001), {1; 0; 1; 1; 0; 1; 0}, en vermenigvuldigt dat met ISGETAL(C2:C8), dat alleen ONWAAR is voor de lege cel inC4: {1; 1; 0; 1; 1; 1; 1}. Het product is {1; 0; 0; 1; 0; 1; 0}: betaalde facturen van D1001. - gewichten vermenigvuldigt behoud met de factuurbedragen: {12000; 0; 0; 25000; 0; 10000; 0}. De openstaande factuur van 3,0003.000 heeft nu gewicht 0, net als de andere klanten.
- punten is SOMPRODUCT(gewichten; C2:C8): 12,00012.000 × 30 + 25,00025.000 × 60 + 10,00010.000 × 20 = 360,000360.000 + 1,500,0001.500.000 + 200,000200.000 = 2,060,0002.060.000. De lege cel
C4staat tegenover gewicht 0 en voegt dus hoe dan ook niets toe. - SOM(gewichten) is 12,00012.000 + 25,00025.000 + 10,00010.000 = 47,00047.000, geen 0, dus ALS kiest de berekening: 2,060,0002.060.000 / 47,00047.000 = 43,8297..., weergegeven als 43,83 dagen.
- Zonder ISGETAL in behoud blijft de factuur van 3,0003.000 in de gewichten staan terwijl hij 0 punten toevoegt: 2,060,0002.060.000 / 50,00050.000 = 41,2. Een geloofwaardig getal, stilletjes 2,63 dagen te laag, omdat een openstaande factuur dan als betaald op dag 0 telt.
- Typ D1009 in
F1. Geen enkele rij komt overeen, SOM(gewichten) is 0, en ALS geeft Geen betaalde facturen in plaats van door nul te delen. Typ D1002 en het resultaat wordt (8,0008.000 × 45 + 15,00015.000 × 38) / 23,00023.000 = 930,000930.000 / 23,00023.000 = 40,43.
Let op: De omgekeerde fout is het ongewogen gemiddelde: SOMPRODUCT(behoud; C2:C8) / SOM(behoud) geeft (30 + 60 + 20) / 3 = 36,67. Ook dat gebruikt de juiste rijen en ziet er even redelijk uit, maar een factuur van 10,00010.000 en een van 25,00025.000 tellen nu even zwaar.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant
Waarom het werkt
Een gewogen gemiddelde is som(gewicht × waarde) / som(gewicht), en beide sommen moeten dezelfde rijen gebruiken. Eén matrix gewichten opbouwen en die zowel in de teller als in de noemer gebruiken garandeert dat; een openstaande factuur verdwijnt uit beide, in plaats van alleen uit de teller. LET berekent gewichten één keer en geeft het een naam, zodat de controle en de deling met precies dezelfde gewichten werken.
Gebruik deze opbouw niet op een grootboekextract met honderdduizenden rijen dat vaak herberekent: elke SOMPRODUCT loopt elke rij af.
Het alternatief is een hulpkolom met factuurbedrag × dagen en twee keer SOMMEN.ALS (punten gedeeld door gewichten) met een criterium "<>" op de kolom met dagen; sneller, ten koste van een extra kolom.
Meer om op te letten
- Een aantal dagen dat als tekst is getypt (30 met een apostrof ervoor) valt door ISGETAL en wordt overgeslagen als een openstaande factuur. Dat is veiliger dan het als 0 tellen, maar het getal berust dan op minder facturen dan je denkt.
Varianten
=SOMPRODUCT((A2:A8 = F1) * ISGETAL(C2:C8),B2:B8, C2:C8) / SOMPRODUCT((A2:A8 = F1) * ISGETAL(C2:C8), B2:B8)
=SOMPRODUCT((A2:A8 = F1) * ISGETAL(C2:C8);B2:B8; C2:C8) / SOMPRODUCT((A2:A8 = F1) * ISGETAL(C2:C8); B2:B8)
Dezelfde 43,83 zonder LET, voor Excel-versies van vóór 2021. De voorwaarde staat er twee keer in, en daar lopen kopieën van deze formule meestal uit de pas.
Veelgemaakte fouten
| Symptoom | Oorzaak | Oplossing |
|---|---|---|
| #WAARDE! als de bereiken verschillen in grootte | Het resultaat is #WAARDE! nadat je één bereik tot rij 8 hebt verlengd en het andere op rij 7 hebt gelaten. | Alle matrices moeten precies even groot zijn. Selecteer in elk argument dezelfde rijen, of maak van de gegevens een tabel zodat de bereiken samen meegroeien. |
| AB-12 telt mee terwijl je ab-12 typte | Je telt codes met SOMPRODUCT(--(A2:A9="ab-12")) en AB-12 telt ook mee. | De vergelijking met = negeert hoofdletters. Voor een hoofdlettergevoelige telling gebruik je SOMPRODUCT(--GELIJK(A2:A9; "ab-12")); GELIJK vergelijkt letter voor letter, inclusief hoofdletters. |
| Werkmap traag door hele kolommen | Een werkmap met SOMPRODUCT over hele kolommen (A:A, B:B) is traag geworden. | SOMPRODUCT vermenigvuldigt echt elke rij die je opgeeft, een miljoen rijen per kolom. Beperk de bereiken tot de gegevens, gebruik een tabel, of stap over op SOMMEN.ALS als de voorwaarden dat toelaten. |
Gebruikt in combinaties
- Ouderdomsanalyse debiteuren die aansluit op de controlerekeningJe telt het openstaande bedrag per ouderdomsklasse op met één SOMMEN.ALS over een klassentabel, telt de klassen op met SOM en controleert of het totaal aansluit op de controlerekening.
- Afgrenzingstoets rond het jaareinde met FILTER en SOMMarkeer de verkoopfacturen waarvan de boekingsdatum en de leverdatum aan verschillende kanten van het jaareinde liggen en tel ze op: twee vergelijkingen met de jaareinddatum geven per datum WAAR of ONWAAR, FILTER houdt de facturen over waarbij die twee verschillen en SOM telt ze op.Excel 2021 of nieuwer (Deze combinatie vereist Excel 2021 of nieuwer)
- Verschillen boven de rapportagegrens met LET, FILTER, HOR.STAPELEN en ABSStem het grootboek per debiteur af op de specificatie van de cliënt en toon alleen de verschillen boven de rapportagegrens: LET geeft de verschillen één keer een naam, HOR.STAPELEN zet er de debiteur naast, FILTER houdt de rijen over waarvan ABS boven de grens uitkomt.Excel 2024 of nieuwer (Deze combinatie vereist Excel 2024 of nieuwer)
- Totaal debiteuren per ouderdomsklasse van 30 dagenJe zet elke vervaldatum met X.ZOEKEN en overeenkomstmodus -1 om in een klasse uit een klassentabel en laat SOM daarna de openstaande bedragen van één klasse optellen.Excel 2021 of nieuwer (Deze combinatie vereist Excel 2021 of nieuwer)
- Boekingen met ronde bedragen vinden met FILTER, REST, AFRONDEN en ABSMarkeer grootboekregels waarvan het bedrag een exact veelvoud van 1.000 is (en boven een minimum ligt): ABS haalt het teken weg, AFRONDEN haalt kleine rekenverschillen weg, REST toetst het veelvoud en FILTER toont de regels.Excel 2021 of nieuwer (Deze combinatie vereist Excel 2021 of nieuwer)