AANTAL
COUNT in Engelstalige Excel
Telt hoeveel cellen in de argumenten een getal bevatten, inclusief datums en nullen, en slaat tekst, lege cellen en foutwaarden over.
Laatst bijgewerkt: 13 oktober 2026
| Rij | A | B | C | D |
|---|---|---|---|---|
| 1 | Debiteur | Bevestigd saldo | Antwoorden ontvangen | |
| 2 | Bakker Staalbouw BV | €12,400.00€ 12.400,00 | 44=AANTAL(B2:B7)=AANTAL(B2:B7) | |
| 3 | Yilmaz Elektro BV | |||
| 4 | Raman Logistics BV | €8,750.50€ 8.750,50 | ||
| 5 | De Vries Isolatie BV | €0.00€ 0,00 | ||
| 6 | Jansen Bouwmarkt BV | |||
| 7 | Smeets Dakbedekking BV | €3,120.00€ 3.120,00 |
Veeg opzij om alle kolommen te zien
Resultaat: 4
=AANTAL(B2:B7)
=AANTAL(B2:B7)
Wat AANTAL doet en wanneer je het gebruikt
Wat het doet: het telt hoeveel cellen in een bereik een getal bevatten, bijvoorbeeld hoeveel debiteuren hun saldo hebben bevestigd.
Wanneer je het gebruikt: om te controleren hoeveel bedragen of datums een kolom werkelijk bevat, vooral bij geïmporteerde gegevens. Voor gevulde cellen van elk soort gebruik je AANTALARG, voor een voorwaarde AANTAL.ALS of AANTALLEN.ALS.
Hoe Excel de functie berekent
Excel verwerkt de argumenten van links naar rechts. Bij een bereik komt elke cel aan de beurt: een getal, datum of tijd telt voor 1, terwijl tekst, een lege cel, WAAR of ONWAAR en een foutwaarde niets opleveren.
Voor waarden die je rechtstreeks in de formule typt, geldt een ruimere regel: getallen, datums, WAAR en ONWAAR en tekst zoals "5" tellen allemaal mee, maar dezelfde tekst in een cel niet. Het resultaat is het totaal van die 1'en, een geheel getal dat 0 is als niets meetelt.
Let op: AANTAL slaat getallen die als tekst zijn opgeslagen zonder melding over, dus het resultaat kan lager zijn dan het aantal rijen.
Denkmodel
Denk aan een medewerker met een telapparaat die alleen klikt bij een getal. Tekst krijgt geen klik, hoe getalachtig die er ook uitziet, en een lege cel ook niet.
Begrippen op deze pagina: foutwaarde, argument, bereik, cel
AANTAL(waarde1,[waarde2], ...)
AANTAL(waarde1;[waarde2]; ...)
| Argument | Soort | Betekenis |
|---|---|---|
waarde1 | Verplicht | Een cel, bereik of waarde; alleen getallen worden geteld. |
waarde2 | Optioneel | Meer bereiken of waarden, in totaal maximaal 255 argumenten. |
Geeft terug:Het aantal getallen dat in de argumenten staat
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
Ontvangen debiteurenbevestigingen tellen
Je hebt saldobevestigingen gestuurd naar zes debiteuren van Veldhuis Installatie BV. In je overzicht typ je het bevestigde saldo in kolom B zodra er antwoord is, en tot die tijd blijft de cel leeg. Je wilt zien hoeveel antwoorden je tot nu toe hebt, inclusief een debiteur die een nulsaldo bevestigde.
| Rij | A | B | C | D | E |
|---|---|---|---|---|---|
| 1 | Debiteur | Bevestigd saldo | Antwoorden ontvangen | ||
| 2 | Bakker Staalbouw BV | €12,400.00€ 12.400,00 | 44=AANTAL(B2:B7)=AANTAL(B2:B7) | ||
| 3 | Yilmaz Elektro BV | ||||
| 4 | Raman Logistics BV | €8,750.50€ 8.750,50 | |||
| 5 | De Vries Isolatie BV | €0.00€ 0,00 | |||
| 6 | Jansen Bouwmarkt BV | ||||
| 7 | Smeets Dakbedekking BV | €3,120.00€ 3.120,00 | |||
| 8 |
Veeg opzij om alle kolommen te zien
Formule in D2
=AANTAL(B2:B7)
=AANTAL(B2:B7)
Resultaat: 44
Stap voor stap
- Excel neemt het bereik
B2:B7en loopt de cellen van boven af langs.B2bevat het getal 12,40012.400, dus het aantal wordt 1. B3is leeg. Een lege cel is geen getal, dus er komt niets bij en het aantal blijft 1.B4bevat 8750,50: het aantal wordt 2.B5bevat 0, het nulsaldo dat De Vries Isolatie BV bevestigde. Nul is een getal, dus het aantal wordt 3.B6is weer leeg, dus het aantal blijft 3.B7bevat 3120, dus het aantal wordt 4.- Het resultaat in
D2is 4: vier van de zes debiteuren hebben gereageerd. Typ 5200 inB3en het resultaat wordt 5, zonder dat je de formule aanraakt.
Let op: Typ je 0 voor debiteuren op wie je nog wacht, dan meldt AANTAL ze als antwoord. Laat de cel leeg tot de bevestiging binnen is.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant
Waarom het werkt
AANTAL kijkt naar wat er in een cel staat, niet naar wat de cel toont. Een bevestigd saldo is een getal en telt dus mee, ook als het 0 is; een debiteur die niet heeft gereageerd laat de cel leeg en telt dus niet mee. Daarmee is de formule een betrouwbare teller van antwoorden, zolang je lege cellen leeg laat.
Meer om op te letten
- Een saldo dat als tekst is ingevoerd, bijvoorbeeld met een spatie ervoor, telt niet mee en de debiteur lijkt te zwijgen. Let op links uitgelijnde invoer in kolom B.
Varianten
=RIJEN(B2:B7) - AANTAL(B2:B7)
=RIJEN(B2:B7) - AANTAL(B2:B7)
Toont hoeveel debiteuren je nog moet nabellen (2). Kies deze als de openstaande bevestigingen belangrijker zijn dan de ontvangen.
Halfgevorderd
Geïmporteerde bedragen vinden die Excel niet als getal leest
De cliënt leverde het inkoopgrootboek van Veldhuis Installatie BV aan als CSV-bestand. Je hebt de bedragenkolom in je werkpapier geplakt en het totaal lijkt te laag.
Voordat je de oorzaak zoekt, wil je één cijfer: hoeveel gevulde cellen in de bedragenkolom zijn geen getal. AANTALARG telt de gevulde cellen, AANTAL telt hoeveel daarvan Excel als getal leest, en het verschil is je antwoord.
| Rij | A | B | C | D | E |
|---|---|---|---|---|---|
| 1 | Factuurnr. | Bedrag (import) | Bedragen als tekst | ||
| 2 | P-25-1001 | €4,250.00€ 4.250,00 | 33=AANTALARG(B2:B9) - AANTAL(B2:B9)=AANTALARG(B2:B9) - AANTAL(B2:B9) | ||
| 3 | P-25-1002 | 1875,50 | |||
| 4 | P-25-1003 | €960.00€ 960,00 | |||
| 5 | P-25-1004 | 12300,00 | |||
| 6 | P-25-1005 | ||||
| 7 | P-25-1006 | €2,480.75€ 2.480,75 | |||
| 8 | P-25-1007 | 530,00 | |||
| 9 | P-25-1008 | €7,115.00€ 7.115,00 | |||
| 10 |
Veeg opzij om alle kolommen te zien
Formule in D2
=AANTALARG(B2:B9) - AANTAL(B2:B9)
=AANTALARG(B2:B9) - AANTAL(B2:B9)
Resultaat: 33
Stap voor stap
- Excel rekent eerst AANTALARG(B2:B9) uit. Die telt elke cel die niet leeg is:
B2tot en metB5zijn gevuld (4),B6is leeg,B7tot en metB9zijn gevuld (3). Het resultaat is 7. - Dan loopt AANTAL(B2:B9) dezelfde cellen langs.
B2bevat 4250: aantal 1.B3bevat de tekst 1875,50, geen getal: overgeslagen.B4bevat 960: aantal 2. B5bevat de tekst 12300,00: overgeslagen.B6is leeg: overgeslagen.B7bevat 2480,75: aantal 3.B8bevat de tekst 530,00: overgeslagen.B9bevat 7115: aantal 4. Het resultaat is 4.- Excel trekt af: 7 - 4 = 3. Drie gevulde cellen zijn geen getal:
B3,B5enB8. - Die drie bevatten samen 1875,50 + 12,300.0012.300,00 + 530,00 = 14,705.5014.705,50, dat SOM zou overslaan. Zet de tekst om en
D2zakt naar 0, dus de formule werkt ook als controle.
Let op: De formule zegt hoeveel, niet welke. Zoek de cellen met een filter op tekst, of kijk naar de groene driehoekjes, voordat je iets omzet.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 2 varianten
Waarom het werkt
AANTALARG telt een cel omdat er iets in staat; AANTAL telt de cel alleen als dat iets een getal is. Het verschil is precies de verzameling cellen die gevuld zijn maar geen getal bevatten. De lege cel B6 komt in geen van beide tellingen voor en vertekent het resultaat dus niet.
Meer om op te letten
- Een formule die lege tekst ("") teruggeeft, telt voor AANTALARG als gevuld en is voor AANTAL geen getal. Ze verschijnt dus in het resultaat, ook al lijkt de cel leeg.
Varianten
=SOMPRODUCT(--ISTEKST(B2:B9))
=SOMPRODUCT(--ISTEKST(B2:B9))
Telt alleen cellen met tekst (3). Kies deze als er foutwaarden in de kolom kunnen staan: AANTALARG telt die mee, dus de hoofdformule zou ze meerekenen.
=RIJEN(B2:B9) - AANTAL(B2:B9)
=RIJEN(B2:B9) - AANTAL(B2:B9)
Telt elke rij die geen getal is, lege rijen inbegrepen (4). Kies deze als ook een leeg bedrag een bevinding is.
Gevorderd
Toetsen of elke bankreconciliatie is ingevuld
Veldhuis Installatie BV heeft vier bankrekeningen en stelt elke maand een reconciliatie op. Het werkblad toont per rekening het onverklaarde verschil over september tot en met november. Elke cel betekent een van vier dingen:
- 0: aangesloten
- een getal ongelijk aan 0: een verschil om na te gaan
- tekst: de reconciliatie loopt
- een lege cel: er is niets opgesteld
Je wilt één statuscel die zegt of alle 12 cijfers er zijn.
| Rij | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 1 | Bankrekening | sep | okt | nov | Status | ||
| 2 | Rekening-courant | €0.00€ 0,00 | €0.00€ 0,00 | €0.00€ 0,00 | Onvolledig=ALS(AANTAL(B2:D5) = RIJEN(B2:D5) * KOLOMMEN(B2:D5), "Compleet", "Onvolledig")=ALS(AANTAL(B2:D5) = RIJEN(B2:D5) * KOLOMMEN(B2:D5); "Compleet"; "Onvolledig") | ||
| 3 | Spaarrekening | €0.00€ 0,00 | €0.00€ 0,00 | lopend | |||
| 4 | Salarisrekening | €0.00€ 0,00 | -€45.50€ -45,50 | ||||
| 5 | Valutarekening | €12.80€ 12,80 | €0.00€ 0,00 | €0.00€ 0,00 | |||
| 6 |
Veeg opzij om alle kolommen te zien
Formule in F2
=ALS(AANTAL(B2:D5) = RIJEN(B2:D5) * KOLOMMEN(B2:D5),"Compleet", "Onvolledig")
=ALS(AANTAL(B2:D5) = RIJEN(B2:D5) * KOLOMMEN(B2:D5);"Compleet"; "Onvolledig")
Resultaat: Onvolledig
Stap voor stap
- Excel rekent eerst de binnenste functies uit. RIJEN(B2:D5) geeft 4 en KOLOMMEN(B2:D5) geeft 3.
- De vermenigvuldiging geeft 4 * 3 = 12, het aantal cellen dat een verschil moet bevatten.
AANTAL(B2:D5) loopt het blok rij voor rij af:
- rekening-courant: 0, 0, 0 geeft 3 getallen (nul telt mee)
- spaarrekening: 0, 0 en de tekst lopend geeft 2
- salarisrekening: 0, -45,50 en een lege cel geeft 2
- valutarekening: 12,80, 0, 0 geeft 3
- Het totaal is 3 + 2 + 2 + 3 = 10. Excel vergelijkt 10 = 12, en dat is ONWAAR.
- ALS geeft daarom het derde argument terug: Onvolledig verschijnt in
F2. - Vul een getal in
D3en inD4en AANTAL stijgt naar 12, de vergelijking wordt WAAR enF2toont Compleet.
Let op: Stille fout: iemand typt 0 in een cel om de status op Compleet te krijgen zonder de reconciliatie op te stellen. AANTAL kan een echte 0 niet onderscheiden van een plaatshouder, dus beoordeel ook de goedkeuring en niet alleen het aantal.
Meer over dit voorbeeld: waarom het werkt, nog 2 valkuilen, 2 varianten
Waarom het werkt
Het verwachte aantal volgt uit de vorm van het blok. Voeg je een rij of kolom aan het bereik toe, dan veranderen beide kanten van de vergelijking mee en staat er niets vast ingetikt. AANTAL accepteert alleen getallen, dus tekst en lege cellen laten de toets mislukken en 0 niet, en dat is precies wat je wilt bij een reconciliatie zonder verschil.
Meer om op te letten
- Een cijfer dat als tekst is ingevoerd, bijvoorbeeld 12,80 met een verdwaalde spatie, telt niet mee en de status blijft Onvolledig terwijl de cel gevuld lijkt.
- De toets controleert of er cijfers zijn, niet of ze klein zijn. De salarisrekening in oktober bevat -45,50, dat als aanwezig meetelt en toch nog opvolging vraagt.
Varianten
=RIJEN(B2:D5) * KOLOMMEN(B2:D5) - AANTAL(B2:D5)
=RIJEN(B2:D5) * KOLOMMEN(B2:D5) - AANTAL(B2:D5)
Geeft het aantal ontbrekende cijfers (2) in plaats van een oordeel. Kies deze als je rapporteert hoeveel er nog openstaat.
=AANTAL(B2:D2)
=AANTAL(B2:D2)
Telt de cijfers in één rij (3 voor de rekening-courant). Kopieer de formule omlaag om te zien welke rekening onvolledig is.
ExpertExcel 2021 of nieuwer (Dit voorbeeld vereist Excel 2021 of nieuwer)
Weekendboekingen in handmatige journaalposten tellen
Bij de journaalposttoets bij Veldhuis Installatie BV zoek je in de decemberboekingen naar risico-indicatoren. Eén ervan is een handmatige boeking (dagboek MEM) op een zaterdag of zondag.
De voorwaarde volgt uit de datum zelf, dus met AANTALLEN.ALS alleen kom je er niet. AANTAL kan het wel, zodra ALS alleen de datums overhoudt die aan de toets voldoen.
| Rij | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 1 | Boekstuk | Dagboek | Boekdatum | Dagboek | MEM | ||
| 2 | 2025-0412 | MEM | 27-12-2025 | Weekendboekingen | 33=LET( boekdata, C2:C9, isWeekend, WEEKDAG(boekdata, 2) > 5, isHandmatig, B2:B9 = F1, AANTAL(ALS(isWeekend * isHandmatig, boekdata)) )=LET( boekdata; C2:C9; isWeekend; WEEKDAG(boekdata; 2) > 5; isHandmatig; B2:B9 = F1; AANTAL(ALS(isWeekend * isHandmatig; boekdata)) ) | ||
| 3 | 2025-0413 | VRK | 28-12-2025 | ||||
| 4 | 2025-0414 | MEM | 29-12-2025 | ||||
| 5 | 2025-0415 | MEM | 28-12-2025 | ||||
| 6 | 2025-0416 | INK | 20-12-2025 | ||||
| 7 | 2025-0417 | MEM | 31-12-2025 | ||||
| 8 | 2025-0418 | MEM | 13-12-2025 | ||||
| 9 | 2025-0419 | BNK | 15-12-2025 | ||||
| 10 |
Veeg opzij om alle kolommen te zien
Formule in F2
=LET( boekdata,C2:C9, isWeekend, WEEKDAG(boekdata, 2) > 5, isHandmatig, B2:B9 = F1, AANTAL(ALS(isWeekend * isHandmatig, boekdata)) )
=LET( boekdata;C2:C9; isWeekend; WEEKDAG(boekdata; 2) > 5; isHandmatig; B2:B9 = F1; AANTAL(ALS(isWeekend * isHandmatig; boekdata)) )
Resultaat: 33
Stap voor stap
- LET geeft boekdata de waarde
C2:C9, acht datums die als serieel getal zijn opgeslagen. Er is nog niets geteld. - isWeekend: WEEKDAG met type_getal 2 nummert de dagen van maandag = 1 tot zondag = 7 en geeft {6; 7; 1; 7; 6; 3; 6; 1}. De toets > 5 laat zaterdag en zondag over: {WAAR; WAAR; ONWAAR; WAAR; WAAR; ONWAAR; WAAR; ONWAAR}.
- isHandmatig: B2:B9 = F1 vergelijkt elk dagboek met
MEMen geeft {WAAR; ONWAAR; WAAR; WAAR; ONWAAR; WAAR; WAAR; ONWAAR}. - Vermenigvuldigen maakt van WAAR en ONWAAR een 1 en een 0. Het product is {1; 0; 0; 1; 0; 0; 1; 0}: alleen boekstuk
2025-0412,2025-0415en2025-0418voldoen aan beide toetsen. - ALS heeft geen derde argument, dus bij een 1 komt de boekdatum terug en bij een 0 komt ONWAAR terug: {datum; ONWAAR; ONWAAR; datum; ONWAAR; ONWAAR; datum; ONWAAR}.
- AANTAL telt de 3 datums en slaat de ONWAAR-waarden over, want logische waarden in een matrix zijn geen getallen. Het resultaat is 3. Zet
F1opVRKen het wordt 1 (boekstuk2025-0413, een zondag).
Let op: Stille fout: WEEKDAG(boekdata) zonder type_getal 2 telt zondag = 1 tot zaterdag = 7, dus > 5 selecteert vrijdag en zaterdag. De formule geeft nog steeds een aannemelijk getal, maar het verkeerde.
Meer over dit voorbeeld: waarom het werkt, nog 3 valkuilen, 2 varianten
Waarom het werkt
ALS zonder derde argument werkt als filter: de datums die voldoen blijven staan en de rest wordt ONWAAR, wat AANTAL in een matrix negeert. De voorwaarde mag daardoor elke berekende toets zijn, hier de weekdag, en dat kan AANTALLEN.ALS niet, omdat de criteria daar de celwaarde zelf vergelijken.
Meer om op te letten
- Een lege boekdatum wordt gelezen als serieel getal 0, dat WEEKDAG op een zaterdag zet. Een lege datum bij een handmatige boeking telt dus als weekendboeking. Toets lege datums apart.
- Een boekdatum die als tekst is opgeslagen, wordt door AANTAL zonder foutmelding overgeslagen. ALS geeft de tekst zelf terug en AANTAL telt geen tekst, dus een weekendboeking met een tekstdatum ontbreekt en het resultaat is te laag. Dat geldt of WEEKDAG de tekst nu kan lezen of niet. Controleer met AANTAL(C2:C9) dat alle 8 datums echte datums zijn.
- LET heeft Excel 2021 of Microsoft 365 nodig; oudere versies kennen LET helemaal niet, dus de formule is daar niet bruikbaar. Gebruik de variant met SOMPRODUCT in een werkmap die anderen in een oudere versie openen.
Varianten
=SOMPRODUCT((WEEKDAG(C2:C9,2) > 5) * (B2:B9 = F1))
=SOMPRODUCT((WEEKDAG(C2:C9;2) > 5) * (B2:B9 = F1))
Geeft 3 in elke Excel-versie zonder matrixinvoer. Kies deze als anderen het bestand in een oudere versie openen.
Anders dan AANTAL(ALS(...)) hoeft de datumcel hier geen getal te zijn: een tekstdatum die WEEKDAG nog kan lezen telt mee. Een lege datum (serieel 0, een zaterdag) telt bij beide formules mee, zoals bij de valkuilen staat. De twee formules kunnen dus bij tekstdatums verschillen, dus controleer de datums eerst met AANTAL(C2:C9).
=AANTALLEN.ALS(B2:B9,F1)
=AANTALLEN.ALS(B2:B9;F1)
Telt alle MEM-regels (5). Is de voorwaarde een gewone waarde in een kolom, dan is AANTALLEN.ALS korter en is geen matrixberekening nodig: bouw daarvoor geen AANTAL(ALS(...)).
Veelgemaakte fouten
| Symptoom | Oorzaak | Oplossing |
|---|---|---|
| Aantal lager dan het aantal rijen | Het resultaat is lager dan het aantal rijen, omdat een deel van de bedragen als tekst is geïmporteerd. Die staan links uitgelijnd en hebben vaak een groen driehoekje. | Vergelijk met AANTALARG om te zien hoeveel cellen gevuld zijn maar geen getal bevatten, en zet de tekst daarna om met WAARDE of Tekst naar kolommen. |
| Namen of codes ontbreken in het aantal | AANTAL wordt gebruikt om gevulde cellen te tellen, en tekstwaarden zoals namen of codes ontbreken in het resultaat. | AANTAL telt alleen getallen. Gebruik AANTALARG voor 'niet leeg' en bewaar AANTAL voor bedragen, aantallen en datums. |
| Nullen als plaatshouder tellen mee | Een 0 die als plaatshouder voor 'nog niet gedaan' is ingetypt, wordt meegeteld, waardoor het werkblad werk als afgerond meldt. | Een 0 is een getal. Laat een cel leeg tot er een uitkomst is, of gebruik een tekst zoals openstaand, die AANTAL overslaat. |
| 0 bij AANTAL(B2:B9>1000) | AANTAL(B2:B9>1000) geeft 0. De vergelijking levert WAAR en ONWAAR op, en die telt AANTAL niet mee. | Tel op voorwaarde met AANTAL.ALS(B2:B9; ">1000"), of laat ALS de getallen teruggeven die voldoen, zoals in het voorbeeld op niveau Expert. |