Beschikbaar in:Excel 2010 of nieuwer (Werkt in Excel 2010, elke latere versie, Microsoft 365 en Excel voor het web)Voorbeelden vragen Excel 2021 of nieuwerCategorie:Wiskundig

AGGREGAAT

AGGREGATE in Engelstalige Excel

Voert een van 19 berekeningen uit, zoals SOM, GROOTSTE of een kwartiel, en slaat naar keuze foutwaarden, verborgen rijen of geneste subtotalen over.

Moeilijkheidsgraad 4 van 5. Je kiest twee codes uit lijsten van 19 en 8, de functie heeft twee vormen, en de uitkomst ziet er goed uit terwijl er stilletjes rijen ontbreken.

Laatst bijgewerkt: 13 oktober 2026

Bekijk de uitgewerkte voorbeelden

Fragment van het werkblad: in E2 staat de formule
RijABCDE
1OrderregelMateriaalcodeRegelwaardeTotaal geprijsde regels
2OL-01KB-2501€1,250.00€ 1.250,00€5,825.75€ 5.825,75=AGGREGAAT(9, 6, C2:C7)=AGGREGAAT(9; 6; C2:C7)
3OL-02KB-2517#N/B
4OL-03WP-0310€840.50€ 840,50
5OL-04WP-0388€3,120.00€ 3.120,00
6OL-05KB-2999#N/B
7OL-06TH-1140€615.25€ 615,25
Formulecel (E2)InvoerOpmerking: C3 en C6 zijn echte foutwaarden #N/B, zoals een mislukte opzoekformule die geeft. Typ ze met =NB() als je het blad nabouwt.

Resultaat: €5,825.75€ 5.825,75

=AGGREGAAT(9, 6, C2:C7)
=AGGREGAAT(9; 6; C2:C7)

Wat AGGREGAAT doet en wanneer je het gebruikt

Wat het doet: het voert een berekening uit, zoals een totaal of de op twee na grootste waarde, en slaat de cellen over die je aanwijst, bijvoorbeeld een prijskolom waarin enkele opzoekacties #N/B gaven.

Wanneer je het gebruikt: als een kolom foutwaarden bevat die je niet eerst kunt herstellen, of verborgen rijen, en je toch een totaal of ranglijst nodig hebt. Het vervangt SUBTOTAAL zodra fouten in de weg zitten.

De drie grootste voordelen:

  • Slaat fouten over: één #N/B laat SOM of GROOTSTE niet meer mislukken.
  • Alleen zichtbare rijen: rijen die een filter verbergt vallen weg uit het resultaat.
  • Meer dan een totaal: GROOTSTE, KLEINSTE, percentielen en kwartielen, die SUBTOTAAL niet biedt.

Hoe Excel de functie berekent

Excel leest eerst functie_getal en kiest daarmee de berekening. Daarna leest het opties en stelt het de lijst op van cellen die wegvallen, afhankelijk van de code:

  • foutwaarden
  • rijen die door een filter of door jou zijn verborgen
  • cellen met een SUBTOTAAL- of AGGREGAAT-formule

Wat overblijft gaat de berekening in. Bij de codes 14 tot en met 19 geldt het laatste argument k voor die overgebleven verzameling, dus een rang telt alleen de cellen die zijn behouden.

Bij de codes 1 tot en met 13 moeten de argumenten na opties verwijzingen zijn; bij 14 tot en met 19 mag het derde argument ook een berekende matrix zijn.

Let op: AGGREGAAT verbergt fouten zonder spoor. Wijzen ze op een echt probleem, herstel dan de bron of gebruik ALS.FOUT waar je de vervangende waarde ziet.

Denkmodel

Een sorteertafel met twee schakelaars. De eerste kiest de machine (som, grootste, kwartiel); de tweede kiest wat eruit wordt gehaald voordat de machine start.

Begrippen op deze pagina: celverwijzing, foutwaarde, matrix, argument, cel

AGGREGAAT(functie_getal, opties, verw1, [verw2], ...)
AGGREGAAT(functie_getal; opties; verw1; [verw2]; ...)
Argumenten
ArgumentSoortBetekenis
functie_getalVerplicht1 tot 19: welke berekening, zoals 9 voor SOM of 14 voor GROOTSTE.
optiesVerplicht0 tot 7: wat wordt overgeslagen. 6 = fouten, 5 = verborgen rijen, 7 = beide.
verw1VerplichtHet bereik waarover wordt gerekend (of een matrix, bij de codes 14 tot en met 19).
verw2OptioneelCodes 14 tot en met 19: k (rang of breuk). Codes 1 tot en met 13: meer bereiken.

Geeft terug:Een getal: de gekozen berekening over de cellen die overblijven

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

Totaal van orderregels waarvan de prijs soms niet gevonden is

Je controleert de inkoopverplichtingen van Veldhuis Installatie BV. In kolom C staat de regelwaarde die een opzoekformule uit de prijslijst van de cliënt haalt; voor materiaalcodes die niet in die lijst staan, geeft de opzoekformule #N/B. Je wilt het totaal van de regels die wel een prijs hebben, zonder eerst alle opzoekformules te herstellen.

Fragment van het werkblad: in E2 staat de formule
RijABCDEF
1OrderregelMateriaalcodeRegelwaardeTotaal geprijsde regels
2OL-01KB-2501€1,250.00€ 1.250,00€5,825.75€ 5.825,75=AGGREGAAT(9, 6, C2:C7)=AGGREGAAT(9; 6; C2:C7)
3OL-02KB-2517#N/B
4OL-03WP-0310€840.50€ 840,50
5OL-04WP-0388€3,120.00€ 3.120,00
6OL-05KB-2999#N/B
7OL-06TH-1140€615.25€ 615,25
8
Formulecel (E2)InvoerOpmerking: C3 en C6 zijn echte foutwaarden #N/B, zoals een mislukte opzoekformule die geeft. Typ ze met =NB() als je het blad nabouwt.

Formule in E2

=AGGREGAAT(9, 6, C2:C7)
=AGGREGAAT(9; 6; C2:C7)

Resultaat: €5,825.75€ 5.825,75

Stap voor stap
  1. functie_getal is 9, de code voor SOM. opties is 6: cellen met een foutwaarde worden overgeslagen. Verborgen rijen en geneste subtotalen horen niet bij optie 6.
  2. AGGREGAAT loopt langs C2:C7, zes cellen: 1250, #N/B, 840,50, 3120, #N/B, 615,25.
  3. C3 en C6 bevatten #N/B, dus optie 6 laat ze buiten beschouwing. Er blijven vier cellen over: C2, C4, C5 en C7.
  4. De vier waarden gaan in SOM: 1250 + 840,50 + 3120 + 615,25 = 5825,75.
  5. Herstel je de prijs van OL-02, dan telt die regel meteen mee. SOM(C2:C7) over hetzelfde bereik zou #N/B geven zodra er één fout in staat.

Let op: Het totaal ziet er compleet uit, maar twee orderregels ontbreken erin. Het overslaan van fouten gaat stil, dus tel de foutcellen (Ga naar > Speciaal > Formules > Fouten) en meld ze als regels zonder prijs.

Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant

Waarom het werkt

Het argument opties bepaalt wat wordt overgeslagen voordat de berekening begint, dus SOM ziet alleen getallen. De berekening zelf is de bekende SOM.

Meer om op te letten

  • Optie 6 slaat rijen die een filter verbergt niet over. Neem 7 als je de zichtbare rijen wilt.

Varianten

=SOM(ALS.FOUT(C2:C7, 0))
=SOM(ALS.FOUT(C2:C7; 0))

Hetzelfde totaal, 5825,75. In Excel 2019 en eerder bevestig je de formule met Ctrl+Shift+Enter. Kies deze als je de vervangende waarde in de formule wilt zien staan.

Halfgevorderd

Op twee na grootste boeking terwijl enkele geïmporteerde bedragen fouten zijn

Voor een journaalpostentest bij Veldhuis Installatie BV staan de bedragen van een jaarafsluitingsimport in kolom B. In twee cellen staat een fout omdat de import ze niet kon omzetten. Je wilt het op twee na grootste bedrag weten om te bepalen welke boekingen je als eerste onderzoekt, en de rang moet je in een cel kunnen aanpassen.

Fragment van het werkblad: in F2 staat de formule
RijABCDEFG
1BoekingBedragRang (k)Bedrag op die rang
2JE-101€18,400.00€ 18.400,0033€29,875.00€ 29.875,00=AGGREGAAT(14, 6, B2:B8, D2)=AGGREGAAT(14; 6; B2:B8; D2)
3JE-102€42,150.00€ 42.150,00
4JE-103#WAARDE!
5JE-104€7,300.00€ 7.300,00
6JE-105€42,150.00€ 42.150,00
7JE-106€29,875.00€ 29.875,00
8JE-107#DEEL/0!
9
Formulecel (F2)InvoerOpmerking: B4 en B8 bevatten echte foutwaarden (#WAARDE! en #DEEL/0!) uit de import.

Formule in F2

=AGGREGAAT(14, 6, B2:B8, D2)
=AGGREGAAT(14; 6; B2:B8; D2)

Resultaat: €29,875.00€ 29.875,00

Stap voor stap
  1. functie_getal 14 is GROOTSTE, die een k nodig heeft. opties 6 slaat foutwaarden over. De k is het vierde argument, D2, met de waarde 3.
  2. AGGREGAAT leest B2:B8 en vindt #WAARDE! in B4 en #DEEL/0! in B8. Beide gaan opzij.
  3. Er blijven vijf getallen over: 18400, 42150, 7300, 42150, 29875. Gesorteerd van groot naar klein: 42150, 42150, 29875, 18400, 7300.
  4. De twee boekingen van 42150 nemen rang 1 en rang 2 in, dus rang 3 is 29875.
  5. Typ je 6 in D2, dan is het resultaat #GETAL!: er zijn maar vijf getallen over, dus er is geen zesde grootste.

Let op: Het resultaat is de derde grootste boeking, niet het derde grootste verschillende bedrag. Met 42150 twee keer is rang 2 nog steeds 42150.

Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 2 varianten

Waarom het werkt

De codes 14 tot en met 19 nemen een vierde argument, k, dat wordt toegepast nadat de fouten zijn verwijderd. De rang telt dus alleen echte getallen, en een dubbel bedrag neemt zoveel rangen in als het aantal keer dat het voorkomt.

Meer om op te letten

  • Laat je de k weg bij code 14, dan geeft AGGREGAAT #WAARDE!, omdat GROOTSTE geen standaardrang heeft.

Varianten

=GROOTSTE(ALS(ISGETAL(B2:B8), B2:B8), D2)
=GROOTSTE(ALS(ISGETAL(B2:B8); B2:B8); D2)

Hetzelfde resultaat. Het werkt in elke versie zodra je het bevestigt met Ctrl+Shift+Enter, maar het is langer en gaat mis als je die stap vergeet.

=GROOTSTE(FILTER(B2:B8, ISGETAL(B2:B8)), D2)
=GROOTSTE(FILTER(B2:B8; ISGETAL(B2:B8)); D2)

Microsoft 365 en Excel 2021. Kies deze als je de opgeschoonde lijst ook voor andere berekeningen nodig hebt.

Gevorderd

Grootste factuur van één kostenplaats, zonder MAX.ALS.VOORWAARDEN

In de inkoopfacturen van Veldhuis Installatie BV wil je de grootste factuur weten die op de kostenplaats in E2 is geboekt, om te zien of de goedkeuringsgrens is gehandhaafd. De werkmap moet ook openen in Excel 2010, waar MAX.ALS.VOORWAARDEN niet bestaat (ook niet in Excel 2016 zonder Microsoft 365; de functie begint bij Excel 2019). Alleen de code van de kostenplaats in die cel pas je aan.

Fragment van het werkblad: in F2 staat de formule
RijABCDEFG
1KostenplaatsDocumentBedragKostenplaatsGrootste factuur
2CC-20INV-501€4,820.00€ 4.820,00CC-20€9,360.00€ 9.360,00=AGGREGAAT(14, 6, C2:C8 / (A2:A8 = E2), 1)=AGGREGAAT(14; 6; C2:C8 / (A2:A8 = E2); 1)
3CC-10INV-502€1,275.50€ 1.275,50
4CC-20INV-503€9,360.00€ 9.360,00
5CC-30INV-504€2,210.00€ 2.210,00
6CC-20INV-505€7,745.25€ 7.745,25
7CC-10INV-506€15,890.00€ 15.890,00
8CC-30INV-507€640.00€ 640,00
9
Formulecel (F2)Invoer

Formule in F2

=AGGREGAAT(14, 6, C2:C8 / (A2:A8 = E2), 1)
=AGGREGAAT(14; 6; C2:C8 / (A2:A8 = E2); 1)

Resultaat: €9,360.00€ 9.360,00

Stap voor stap
  1. Van binnen naar buiten: A2:A8 = E2 vergelijkt elke kostenplaats met CC-20. Het resultaat is WAAR, ONWAAR, WAAR, ONWAAR, WAAR, ONWAAR, ONWAAR.
  2. C2:C8 / (die matrix) deelt elk bedrag door 1 bij WAAR en door 0 bij ONWAAR. Resultaat: 4820, #DEEL/0!, 9360, #DEEL/0!, 7745,25, #DEEL/0!, #DEEL/0!.
  3. AGGREGAAT krijgt die matrix met code 14 (GROOTSTE), optie 6 (fouten overslaan) en k = 1.
  4. Optie 6 verwijdert de vier waarden #DEEL/0!. De drie facturen van CC-20 blijven over: 4820, 9360, 7745,25.
  5. De grootste daarvan is 9360. De 15890 van CC-10 is groter dan elk bedrag van CC-20, maar de deling door 0 heeft er een fout van gemaakt en die is overgeslagen.
  6. Verander je E2 in CC-30, dan is het resultaat 2210 (tegen 640).

Let op: Een passende rij met een leeg bedrag wordt 0 / 1 = 0 en telt als waarde. Zijn alle passende bedragen negatief, zoals bij creditnota's, dan wint een lege cel met 0 als grootste, zonder dat iets er mis uitziet.

Meer over dit voorbeeld: waarom het werkt, nog 2 valkuilen, 2 varianten

Waarom het werkt

Delen door een voorwaarde maakt van elke rij die niet voldoet een fout, en de optie om fouten over te slaan werkt dan als filter. De matrixvorm van AGGREGAAT berekent zo'n bewerking zelf, dus Ctrl+Shift+Enter is niet nodig.

Meer om op te letten

  • Komt er geen enkele rij overeen, dan is elke waarde een fout en is het resultaat #GETAL!. Dat klopt, maar het is geen duidelijke melding; zet er alleen ALS.FOUT omheen als je 'geen overeenkomst' kunt onderscheiden van een echt probleem.
  • Verborgen rijen worden hier niet overgeslagen, ook niet met optie 7, omdat de matrix na de deling geen rij-informatie bevat.

Varianten

=MAX.ALS.VOORWAARDEN(C2:C8, A2:A8, E2)
=MAX.ALS.VOORWAARDEN(C2:C8; A2:A8; E2)

Hetzelfde resultaat, 9360. Korter en duidelijker in Excel 2019 en later; gebruik deze tenzij het bestand in Excel 2010, 2013 of 2016 moet werken.

=MAX(FILTER(C2:C8, A2:A8 = E2))
=MAX(FILTER(C2:C8; A2:A8 = E2))

Microsoft 365 en Excel 2021. Kies deze als je de passende rijen ook wilt zien.

ExpertExcel 2021 of nieuwer (Dit voorbeeld vereist Excel 2021 of nieuwer)

Bovengrens voor uitschieters, met fouten en verborgen testrijen overgeslagen

In de journaalposten van Veldhuis Installatie BV stel je een drempel voor ongewone bedragen vast: het derde kwartiel plus 1,5 keer de interkwartielafstand. In de lijst staan een #N/B en een testboeking van 52000 die je met de hand hebt verborgen. Beide moeten buiten de kwartielen blijven, omdat ze de drempel zouden vertekenen.

Fragment van het werkblad: in D2 staat de formule
RijABCDE
1BoekingBedragBovengrens
2JE-201€1,200.00€ 1.200,00€2,159.38€ 2.159,38=LET( bedragen, B2:B9, laagKwartiel, AGGREGAAT(17, 7, bedragen, 1), hoogKwartiel, AGGREGAAT(17, 7, bedragen, 3), AFRONDEN(hoogKwartiel + 1.5 * (hoogKwartiel - laagKwartiel), 2) )=LET( bedragen; B2:B9; laagKwartiel; AGGREGAAT(17; 7; bedragen; 1); hoogKwartiel; AGGREGAAT(17; 7; bedragen; 3); AFRONDEN(hoogKwartiel + 1,5 * (hoogKwartiel - laagKwartiel); 2) )
3JE-202€1,450.00€ 1.450,00
4JE-203#N/B
5JE-204€1,325.00€ 1.325,00
6 (Verborgen of weggefilterde rij)JE-205€52,000.00€ 52.000,00
7JE-206€1,580.00€ 1.580,00
8JE-207€9,800.00€ 9.800,00
9JE-208€1,710.00€ 1.710,00
10
Formulecel (D2)InvoerVerborgen of weggefilterde rijOpmerking: B4 bevat een echte #N/B. Rij 6 (JE-205, 52000) is verborgen met Verbergen, dus er zijn maar 6 getallen zichtbaar: 1200, 1450, 1325, 1580, 9800, 1710. De verborgen testboeking wordt apart onderzocht, en 6 waarden is een demonstratiegrootte: een echte populatie heeft veel meer regels. LET heeft Excel 2021 of Microsoft 365 nodig.

Formule in D2

=LET(
  bedragen, B2:B9,
  laagKwartiel, AGGREGAAT(17, 7, bedragen, 1),
  hoogKwartiel, AGGREGAAT(17, 7, bedragen, 3),
  AFRONDEN(hoogKwartiel + 1.5 * (hoogKwartiel - laagKwartiel), 2)
)
=LET(
  bedragen; B2:B9;
  laagKwartiel; AGGREGAAT(17; 7; bedragen; 1);
  hoogKwartiel; AGGREGAAT(17; 7; bedragen; 3);
  AFRONDEN(hoogKwartiel + 1,5 * (hoogKwartiel - laagKwartiel); 2)
)

Resultaat: €2,159.38€ 2.159,38

Stap voor stap
  1. LET noemt het bereik B2:B9 bedragen. Het blijft een verwijzing, en dat moet ook: alleen zo ziet AGGREGAAT welke rijen verborgen zijn.
  2. laagKwartiel is AGGREGAAT(17; 7; bedragen; 1). Code 17 is KWARTIEL.INC, optie 7 slaat fouten en verborgen rijen over. B4 (#N/B) en rij 6 (52000) vallen af. Gesorteerd: 1200, 1325, 1450, 1580, 1710, 9800.
  3. Het eerste kwartiel staat op positie 1 + 5 × 0,25 = 2,25: 1325 + 0,25 × (1450 - 1325) = 1356,25.
  4. hoogKwartiel gebruikt k = 3, positie 1 + 5 × 0,75 = 4,75: 1580 + 0,75 × (1710 - 1580) = 1677,50.
  5. De interkwartielafstand is 1677,50 - 1356,25 = 321,25. De grens is 1677,50 + 1,5 × 321,25 = 1677,50 + 481,875 = 2159,375, en AFRONDEN maakt daarvan 2159,38.
  6. Boeking JE-207 van 9800 ligt boven 2159,38 en wordt geselecteerd voor onderzoek. Maak je rij 6 weer zichtbaar en gebruik je optie 6, dan springt de grens naar 12306,25, en gaat 9800 ongemerkt door.

Let op: Een andere fout: met optie 6 in plaats van 7 telt de verborgen 52000 mee. Q1 wordt 1387,50, Q3 5755 en de grens 12306,25. De formule geeft nog steeds een getal, dus niets wijst op de fout.

Meer over dit voorbeeld: waarom het werkt, nog 3 valkuilen, 1 variant

Waarom het werkt

LET geeft het bereik één keer een naam, zodat beide kwartielen dezelfde verwijzing lezen en elke AGGREGAAT-aanroep optie 7 erop toepast. Optie 7 combineert twee filters die KWARTIEL.INC op zichzelf niet heeft, en alleen de codes 14 tot en met 19 geven percentielen en kwartielen met die keuze in wat wordt overgeslagen.

Let op

  • Een andere fout: met optie 6 in plaats van 7 telt de verborgen 52000 mee. Q1 wordt 1387,50, Q3 5755 en de grens 12306,25. De formule geeft nog steeds een getal, dus niets wijst op de fout.

    Leg om dezelfde reden vast in welke weergave je de test hebt uitgevoerd: een rij zichtbaar maken of een filter wissen verandert het resultaat zonder waarschuwing.

  • Met optie 4 of 5 wordt de #N/B niet overgeslagen, en geeft de hele formule #N/B.
  • In Microsoft 365 of Excel 2021 geeft FILTER(B2:B9; ISGETAL(B2:B9)) een zichtbare, opgeschoonde lijst die je voor elke statistiek kunt hergebruiken, maar die herkent geen verborgen rijen.

    Het AGGREGAAT-deel van deze formule werkt vanaf Excel 2010 en ziet verborgen rijen, terwijl de LET eromheen Excel 2021 of Microsoft 365 nodig heeft (zonder LET herhaal je B2:B9 in beide aanroepen).

    Komen de fouten uit een opzoekformule, zet daar dan ALS.NB omheen, zodat het probleem wordt aangepakt waar het begint.

Varianten

=LET(
  bedragen, B2:B9,
  laagKwartiel, AGGREGAAT(17, 6, bedragen, 1),
  hoogKwartiel, AGGREGAAT(17, 6, bedragen, 3),
  AFRONDEN(hoogKwartiel + 1.5 * (hoogKwartiel - laagKwartiel), 2)
)
=LET(
  bedragen; B2:B9;
  laagKwartiel; AGGREGAAT(17; 6; bedragen; 1);
  hoogKwartiel; AGGREGAAT(17; 6; bedragen; 3);
  AFRONDEN(hoogKwartiel + 1,5 * (hoogKwartiel - laagKwartiel); 2)
)

Optie 6 geeft hier 12306,25, omdat de verborgen 52000 meetelt. Gebruik dit alleen als verborgen rijen tot de populatie horen.

Veelgemaakte fouten

Veelgemaakte fouten
SymptoomOorzaakOplossing
Een totaal dat klopt maar rijen mistDe uitkomst ziet er goed uit, maar er ontbreken rijen in het totaal: optie 6 heeft de fouten overgeslagen zonder melding.Tel de foutcellen apart en meld ze. Herstel de oorzaak als de fouten niet verwacht zijn.
Subtotaalrijen die dubbel meetellenGebruik je optie 6 op een lijst met SUBTOTAAL-rijen, dan telt AGGREGAAT de subtotalen dubbel.Alleen de opties 0 tot en met 3 slaan geneste SUBTOTAAL- en AGGREGAAT-formules over. Gebruik 2 om fouten en subtotalen over te slaan, of 3 om daarnaast verborgen rijen over te slaan.
#WAARDE! bij een berekende matrixEen code van 1 tot en met 13 met een berekende matrix geeft #WAARDE!.Geef een verwijzing naar een bereik mee, of kies een code van 14 tot en met 19, die matrices accepteren.
Verborgen kolommen zitten nog in het totaalVerborgen kolommen horen te worden overgeslagen, maar de totalen bevatten ze nog.De opties voor verborgen rijen werken alleen op rijen. Zet de gegevens verticaal of tel de zichtbare kolommen op een andere manier op.
#GETAL! terwijl het bereik getallen bevatHet resultaat is #GETAL!, hoewel het bereik getallen bevat.Na het overslaan bleven er minder cellen over dan k vraagt, of geen enkele. Controleer k en de opties.