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

ALS.VOORWAARDEN

IFS in Engelstalige Excel

Toetst voorwaarden een voor een en geeft de waarde die hoort bij de eerste voorwaarde die WAAR is.

Moeilijkheidsgraad 3 van 5. De paren lezen prettig, maar de volgorde van de voorwaarden bepaalt de uitkomst en zonder vangnet krijg je #N/B.

Laatst bijgewerkt: 13 oktober 2026

Bekijk de uitgewerkte voorbeelden

Fragment van het werkblad: in D2 staat de formule
RijABCD
1MaatregelAfwijkingConclusie
2Creditnota's8%8%Steekproef uitbreiden=ALS.VOORWAARDEN(B2<=0.05, "Steunen op maatregel", B2<=0.1, "Steekproef uitbreiden", B2>0.1, "Niet steunen")=ALS.VOORWAARDEN(B2<=0,05; "Steunen op maatregel"; B2<=0,1; "Steekproef uitbreiden"; B2>0,1; "Niet steunen")
3Inkooporders2%2%
4Goederenontvangst5%5%
5Salarismutaties10%10%
6Bankaansluiting14%14%
Formulecel (D2)Invoer

Resultaat: Steekproef uitbreiden

=ALS.VOORWAARDEN(B2<=0.05, "Steunen op maatregel", B2<=0.1, "Steekproef uitbreiden", B2>0.1, "Niet steunen")
=ALS.VOORWAARDEN(B2<=0,05; "Steunen op maatregel"; B2<=0,1; "Steekproef uitbreiden"; B2>0,1; "Niet steunen")

Wat ALS.VOORWAARDEN doet en wanneer je het gebruikt

Wat het doet: het loopt paren van voorwaarde en waarde langs en geeft de waarde bij de eerste voorwaarde die WAAR is, bijvoorbeeld een conclusie per afwijkingspercentage bij een controletest.

Wanneer je het gebruikt: als één cel drie of meer uitkomsten heeft, elk met een eigen test: materialiteitsklassen, risicoklassen, ouderdomsklassen. Het vervangt geneste ALS-functies. Bij veel klassen, of klassen die veranderen, is een tabel met grenzen en X.ZOEKEN beter.

De twee grootste voordelen:

  • Geen nesten: de paren staan naast elkaar, zonder extra laag en sluithaakje voor elke uitkomst.
  • Regels in leesvolgorde: een beoordelaar leest de voorwaarden in de volgorde waarin ze gelden.

Hoe Excel de functie berekent

Excel loopt de lijst met paren van boven naar beneden af:

  • Excel beoordeelt logische_test1; is die WAAR, dan staat het resultaat vast: waarde_als_waar1 komt in de cel en de rest van de paren speelt geen rol meer
  • is de test ONWAAR, dan gaat Excel naar logische_test2, en zo verder langs de lijst
  • zijn alle voorwaarden ONWAAR, dan is er niets om te tonen en verschijnt #N/B

Daarom is een laatste paar met de voorwaarde WAAR het gebruikelijke vangnet: WAAR is altijd waar, dus dat paar vangt alles op wat de eerdere voorwaarden hebben laten liggen.

Let op: De eerste ware voorwaarde wint, dus de volgorde van de paren hoort bij de logica. Bij een verkeerde volgorde verschijnt geen foutmelding: de cel toont dan het verkeerde label.

Denkmodel

Zie het als een stapel zeven met het grofste gaas bovenop: een waarde valt door de lagen tot de eerste laag die haar vasthoudt. Leg je het fijne gaas bovenop, dan blijft alles daar hangen.

Begrippen op deze pagina: cel

ALS.VOORWAARDEN(logische_test1, waarde_als_waar1, [logische_test2, waarde_als_waar2], ...)
ALS.VOORWAARDEN(logische_test1; waarde_als_waar1; [logische_test2; waarde_als_waar2]; ...)
Argumenten
ArgumentSoortBetekenis
logische_test1VerplichtDe eerste voorwaarde; die moet uitkomen op WAAR of ONWAAR.
waarde_als_waar1VerplichtWat de cel toont als de eerste voorwaarde WAAR is.
logische_test2OptioneelDe volgende voorwaarde, alleen getoetst als alle eerdere ONWAAR zijn.
waarde_als_waar2OptioneelWat de cel toont als de tweede voorwaarde de eerste ware is.

Geeft terug:De waarde_als_waar van de eerste ware voorwaarde, of #N/B als geen enkele WAAR is

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

Testresultaten van beheersingsmaatregelen indelen naar afwijkingspercentage

Je hebt vijf beheersingsmaatregelen bij Veldhuis Installatie BV getest en per maatregel het afwijkingspercentage genoteerd. De controleaanpak zegt:

  • tot en met 5%: je steunt op de maatregel
  • boven 5% tot en met 10%: je breidt de steekproef uit
  • boven 10%: je steunt er niet op

Je wilt één formule die elke maatregel zijn conclusie geeft.

Fragment van het werkblad: in D2 staat de formule
RijABCDE
1MaatregelAfwijkingConclusie
2Creditnota's8%8%Steekproef uitbreiden=ALS.VOORWAARDEN(B2<=0.05, "Steunen op maatregel", B2<=0.1, "Steekproef uitbreiden", B2>0.1, "Niet steunen")=ALS.VOORWAARDEN(B2<=0,05; "Steunen op maatregel"; B2<=0,1; "Steekproef uitbreiden"; B2>0,1; "Niet steunen")
3Inkooporders2%2%
4Goederenontvangst5%5%
5Salarismutaties10%10%
6Bankaansluiting14%14%
7
Formulecel (D2)Invoer

Formule in D2

=ALS.VOORWAARDEN(B2<=0.05, "Steunen op maatregel", B2<=0.1, "Steekproef uitbreiden", B2>0.1, "Niet steunen")
=ALS.VOORWAARDEN(B2<=0,05; "Steunen op maatregel"; B2<=0,1; "Steekproef uitbreiden"; B2>0,1; "Niet steunen")

Resultaat: Steekproef uitbreiden

Stap voor stap
  1. In B2 staat een afwijkingspercentage van 8%. Met dat getal vergelijkt elke voorwaarde.
  2. Het eerste paar wordt getoetst: B2<=0,05 betekent 8% <= 5%, en dat is ONWAAR. Excel slaat 'Steunen op maatregel' over en gaat verder.
  3. Het tweede paar wordt getoetst: B2<=0,1 betekent 8% <= 10%, en dat is WAAR. Excel toont de waarde van dit paar, Steekproef uitbreiden.
  4. Het derde paar komt voor deze rij niet meer aan bod, want de eerste ware voorwaarde beslist.
  5. Kopieer de formule naar beneden. In B4 staat precies 5%: B4<=0,05 is WAAR, dus Steunen op maatregel. In B6 staat 14%: de eerste twee voorwaarden zijn ONWAAR, de derde (14% > 10%) is WAAR, dus Niet steunen.

Let op: Haal je het derde paar weg, dan toont rij 6 (14%) #N/B: geen enkele voorwaarde is WAAR, dus er is niets om te tonen. Het voorbeeld op niveau Halfgevorderd laat een vangnet zien dat dit voorkomt.

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

Waarom het werkt

De drie voorwaarden samen dekken elk mogelijk percentage: tot 5%, boven 5% tot 10% en boven 10%. Door de grenzen met <= te schrijven valt een percentage van precies 5% of 10% in de lagere klasse, zoals de controleaanpak voorschrijft.

Meer om op te letten

  • Zet je B2<=0,1 vooraan, dan krijgt de maatregel met 2% het label Steekproef uitbreiden, want 2% is ook hooguit 10% en de eerste ware voorwaarde wint.

Varianten

=ALS.VOORWAARDEN(B2<=0.05, "Steunen op maatregel", B2<=0.1, "Steekproef uitbreiden", WAAR, "Niet steunen")
=ALS.VOORWAARDEN(B2<=0,05; "Steunen op maatregel"; B2<=0,1; "Steekproef uitbreiden"; WAAR; "Niet steunen")

Gebruik WAAR als laatste voorwaarde als de laatste klasse alles is wat overblijft; dan hoef je de grens niet twee keer te schrijven.

Halfgevorderd

Niet-gecorrigeerde verschillen indelen naar de materialiteitsgrenzen

Op het overzicht van niet-gecorrigeerde verschillen van Veldhuis Installatie BV staan vijf posten. Een negatief bedrag betekent dat de administratie lager staat dan hoort. In dit voorbeeld hanteert het kantoor deze aanpak, naar omvang van het verschil:

  • vanaf de materialiteit (F1): vraagt om een correctie
  • vanaf de uitvoeringsmaterialiteit (F2): wordt besproken met de directie
  • vanaf de grens voor kennelijk onbelangrijke afwijkingen (F3): komt op het overzicht
  • daaronder: is kennelijk onbelangrijk

Elke afwijking boven die laatste grens meld je met het verzoek haar te corrigeren; de klassen hier bepalen alleen hoe je ze opvolgt. De omvang telt, niet het teken.

Fragment van het werkblad: in C2 staat de formule
RijABCDEFG
1PostVerschilVerwerkingMaterialiteit€120,000.00€ 120.000,00
2Waardering voorraad-€88,000.00€ -88.000,00Bespreken met de directie=ALS.VOORWAARDEN(ABS(B2)>=$F$1, "Correctie vragen", ABS(B2)>=$F$2, "Bespreken met de directie", ABS(B2)>=$F$3, "Opnemen op overzicht", WAAR, "Kennelijk onbelangrijk")=ALS.VOORWAARDEN(ABS(B2)>=$F$1; "Correctie vragen"; ABS(B2)>=$F$2; "Bespreken met de directie"; ABS(B2)>=$F$3; "Opnemen op overzicht"; WAAR; "Kennelijk onbelangrijk")Uitvoeringsmaterialiteit€84,000.00€ 84.000,00
3Afgrenzing omzet december€135,000.00€ 135.000,00Grens kennelijk onbelangrijk€6,000.00€ 6.000,00
4Vooruitbetaalde verzekering€12,400.00€ 12.400,00
5Te betalen energiekosten-€4,200.00€ -4.200,00
6Niet verwerkte bankkosten€6,000.00€ 6.000,00
7
Formulecel (C2)InvoerOpmerking: De grenzen staan in F1:F3, zodat de formule ernaar kan verwijzen en een andere materialiteit geen formulewijziging vraagt.

Formule in C2

=ALS.VOORWAARDEN(ABS(B2)>=$F$1, "Correctie vragen", ABS(B2)>=$F$2, "Bespreken met de directie", ABS(B2)>=$F$3, "Opnemen op overzicht", WAAR, "Kennelijk onbelangrijk")
=ALS.VOORWAARDEN(ABS(B2)>=$F$1; "Correctie vragen"; ABS(B2)>=$F$2; "Bespreken met de directie"; ABS(B2)>=$F$3; "Opnemen op overzicht"; WAAR; "Kennelijk onbelangrijk")

Resultaat: Bespreken met de directie

Stap voor stap
  1. In B2 staat -88,00088.000. ABS haalt het teken weg, dus elke voorwaarde rekent met 88,00088.000.
  2. Paar 1: 88,00088.000 >= $F$1 (120,000120.000) is ONWAAR, dus de post haalt de materialiteit niet.
  3. Paar 2: 88,00088.000 >= $F$2 (84,00084.000) is WAAR. Excel toont Bespreken met de directie en stopt hier.
  4. Voor C5 (-4,2004.200) geldt: 4,2004.200 is lager dan 120,000120.000, lager dan 84,00084.000 en lager dan 6,0006.000, dus de paren 1 tot en met 3 zijn alle ONWAAR. Het vierde paar heeft WAAR als voorwaarde en toont Kennelijk onbelangrijk.
  5. In C6 staat precies 6,0006.000: 6,0006.000 >= $F$3 is WAAR door het >=-teken, dus de post komt op het overzicht.
  6. De grenzen lopen van hoog naar laag. In rij 3 (135,000135.000) is paar 1 al WAAR. Draai je de volgorde om, dan haalt 135,000135.000 eerst de grens voor kennelijk onbelangrijke afwijkingen en wordt de post nooit voor correctie aangemerkt.

Let op: Laat je ABS weg, dan valt elk negatief verschil door naar het vangnet, want -88,00088.000 is niet >= 120,000120.000, 84,00084.000 of 6,0006.000. De cel toont geen fout: Kennelijk onbelangrijk ziet er aannemelijk uit, en juist daardoor is dit de gevaarlijke fout.

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

Waarom het werkt

Elke voorwaarde is een ondergrens, dus een groter verschil voldoet ook aan de lagere grenzen. De formule klopt alleen doordat de hoogste grens als eerste wordt getoetst. Het laatste paar met WAAR maakt van het geval waarin niets past een benoemde uitkomst in plaats van #N/B.

Meer om op te letten

  • Zonder $-tekens schuiven de grenzen mee als je de formule naar beneden kopieert, en rij 3 vergelijkt met F2, F3 en F4.

Varianten

=LET(grootte, ABS(B2), ALS.VOORWAARDEN(grootte>=$F$1, "Correctie vragen", grootte>=$F$2, "Bespreken met de directie", grootte>=$F$3, "Opnemen op overzicht", WAAR, "Kennelijk onbelangrijk"))
=LET(grootte; ABS(B2); ALS.VOORWAARDEN(grootte>=$F$1; "Correctie vragen"; grootte>=$F$2; "Bespreken met de directie"; grootte>=$F$3; "Opnemen op overzicht"; WAAR; "Kennelijk onbelangrijk"))

Kies deze als je de formule wilt lezen als omvang tegenover grenzen; ABS staat dan één keer in plaats van drie keer.

Gevorderd

Inkoopfacturen toetsen op afgrenzing rond de balansdatum

Bij Veldhuis Installatie BV toets je of inkoopfacturen rond 31 december 2025 in het juiste jaar staan. De factuurdatum laat zien wanneer de kosten zijn geboekt, de leverdatum wanneer de goederen binnenkwamen. Drie gevallen tellen:

  • een ontbrekende leverdatum kun je niet beoordelen en moet worden opgevraagd
  • levering op of vóór de balansdatum, factuur erna gedateerd: er ontbreekt een schuld
  • levering na de balansdatum, factuur op of vóór die datum gedateerd: de kosten zijn te vroeg geboekt
Fragment van het werkblad: in D2 staat de formule
RijABCDEFG
1FactuurFactuurdatumLeverdatumUitkomst afgrenzingBalansdatum31-12-2025
2PI-710108-01-202629-12-2025Schuld ontbreekt: kosten horen bij 2025=ALS.VOORWAARDEN(C2="", "Leverdatum ontbreekt", EN(C2<=$F$1, B2>$F$1), "Schuld ontbreekt: kosten horen bij 2025", EN(C2>$F$1, B2<=$F$1), "Te vroeg geboekt: levering in 2026", WAAR, "Juiste periode")=ALS.VOORWAARDEN(C2=""; "Leverdatum ontbreekt"; EN(C2<=$F$1; B2>$F$1); "Schuld ontbreekt: kosten horen bij 2025"; EN(C2>$F$1; B2<=$F$1); "Te vroeg geboekt: levering in 2026"; WAAR; "Juiste periode")
3PI-710230-12-202505-01-2026
4PI-710315-12-202514-12-2025
5PI-710412-01-202610-01-2026
6PI-710528-12-2025
7
Formulecel (D2)InvoerOpmerking: De leverdatum van PI-7105 is bewust leeg. De datums zijn echte datumwaarden in Excel; voer ze als datum in als je het werkblad nabouwt.

Formule in D2

=ALS.VOORWAARDEN(C2="", "Leverdatum ontbreekt", EN(C2<=$F$1, B2>$F$1), "Schuld ontbreekt: kosten horen bij 2025", EN(C2>$F$1, B2<=$F$1), "Te vroeg geboekt: levering in 2026", WAAR, "Juiste periode")
=ALS.VOORWAARDEN(C2=""; "Leverdatum ontbreekt"; EN(C2<=$F$1; B2>$F$1); "Schuld ontbreekt: kosten horen bij 2025"; EN(C2>$F$1; B2<=$F$1); "Te vroeg geboekt: levering in 2026"; WAAR; "Juiste periode")

Resultaat: Schuld ontbreekt: kosten horen bij 2025

Stap voor stap
  1. Paar 1, de controle op een lege cel: C2 bevat 29 dec 2025, dus C2="" is ONWAAR. Excel gaat verder.
  2. Paar 2, eerst het binnenste deel. C2<=$F$1: 29 dec 2025 <= 31 dec 2025 is WAAR. B2>$F$1: 8 jan 2026 > 31 dec 2025 is WAAR. EN van twee ware waarden is WAAR.
  3. De voorwaarde is WAAR, dus het resultaat is Schuld ontbreekt: kosten horen bij 2025. De goederen kwamen in december binnen, de factuur is in januari geboekt.
  4. Rij 3 (PI-7102): de leverdatum 5 jan 2026 voldoet niet aan C3<=$F$1, dus EN in paar 2 is ONWAAR. In paar 3 is C3>$F$1 WAAR en B3<=$F$1 (30 dec 2025) WAAR: Te vroeg geboekt.
  5. Rij 6 (PI-7105) heeft een lege C6, dus paar 1 is WAAR en het resultaat is Leverdatum ontbreekt. Naar de datumvoorwaarden wordt niet meer gekeken.
  6. De rijen 4 en 5 (PI-7103, PI-7104) hebben beide datums in hetzelfde jaar. De paren 2 en 3 zijn ONWAAR en het vangnet met WAAR toont Juiste periode.

Let op: Zet je de controle op de lege cel achteraan, dan toont PI-7105 Juiste periode zonder enige foutmelding: de lege C6 wordt gelezen als datum 0, die voor 31 dec 2025 ligt, waardoor geen van beide datumvoorwaarden past en het WAAR-paar het oppakt. De toets zegt dan dat een factuur goed is terwijl je de leverdatum niet hebt gezien.

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

Waarom het werkt

Elk paar beschrijft één manier waarop een inkoop in de verkeerde periode kan staan, en met EN toetst één paar twee datums tegelijk. Het paar met WAAR aan het eind maakt van de overige gevallen bewust Juiste periode. De controle op een lege cel staat vooraan, omdat een lege cel anders als de datum 0 wordt gelezen.

Meer om op te letten

  • Zijn datums als tekst geïmporteerd, dan beschouwt Excel tekst als groter dan elk getal, waardoor C2>$F$1 voor elke rij WAAR is. Elke rij met een leverdatum toont dan Juiste periode, zonder foutmelding. Controleer de kolommen met ISGETAL voordat je de labels vertrouwt.

Varianten

=ALS.VOORWAARDEN(C2="", "Leverdatum ontbreekt", (C2<=$F$1)<>(B2<=$F$1), ALS(C2<=$F$1, "Schuld ontbreekt: kosten horen bij 2025", "Te vroeg geboekt: levering in 2026"), WAAR, "Juiste periode")
=ALS.VOORWAARDEN(C2=""; "Leverdatum ontbreekt"; (C2<=$F$1)<>(B2<=$F$1); ALS(C2<=$F$1; "Schuld ontbreekt: kosten horen bij 2025"; "Te vroeg geboekt: levering in 2026"); WAAR; "Juiste periode")

Korter: één voorwaarde vraagt of de twee datums aan verschillende kanten van de balansdatum liggen, en een ALS erbinnen kiest de richting. Kies de lange versie als een beoordelaar elke regel afzonderlijk moet kunnen lezen.

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

Alle journaalposten in één overlopende formule indelen naar risico

Bij het toetsen van de journaalposten van Veldhuis Installatie BV rangschik je zeven handmatige boekingen naar risico:

  • Kritiek: een boeking zonder goedkeuring, ongeacht de omvang
  • Hoog: in het weekend geboekt en op of boven de uitvoeringsmaterialiteit (G2)
  • Middel: in het weekend geboekt of op of boven de uitvoeringsmaterialiteit, maar niet allebei
  • Laag: al het andere

Je wilt één formule in E2 die alle zeven boekingen indeelt en waarvan de beoordelaar de regels kan lezen.

Fragment van het werkblad: in E2 staat de formule
RijABCDEFGHIJK
1JournaalpostBedragIn weekend geboektGoedgekeurdRisicoklasseUitvoeringsmaterialiteitOndergrensKlasse
2JE-0412€125,000.00€ 125.000,00WAARWAARHoog=LET( bedrag, B2:B8, weekend, C2:C8, goedgekeurd, D2:D8, um, $G$2, ALS.VOORWAARDEN( NIET(goedgekeurd), "Kritiek", weekend * (bedrag >= um) > 0, "Hoog", weekend + (bedrag >= um) > 0, "Middel", WAAR, "Laag" ) )=LET( bedrag; B2:B8; weekend; C2:C8; goedgekeurd; D2:D8; um; $G$2; ALS.VOORWAARDEN( NIET(goedgekeurd); "Kritiek"; weekend * (bedrag >= um) > 0; "Hoog"; weekend + (bedrag >= um) > 0; "Middel"; WAAR; "Laag" ) )€84,000.00€ 84.000,00€0.00€ 0,00Laag
3JE-0413€9,500.00€ 9.500,00ONWAARWAARLaag€25,000.00€ 25.000,00Middel
4JE-0419€3,200.00€ 3.200,00WAARWAARMiddel€84,000.00€ 84.000,00Hoog
5JE-0420€91,000.00€ 91.000,00ONWAARWAARMiddel
6JE-0431€15,000.00€ 15.000,00ONWAARONWAARKritiek
7JE-0432€84,000.00€ 84.000,00ONWAARWAARMiddel
8JE-0440€640.00€ 640,00WAARONWAARKritiek
9
Formulecel (E2)InvoerOverloopresultaatOpmerking: De kleine tabel in I2:J4 hoort bij de variant met X.ZOEKEN. De formule in E2 loopt over naar E8, dus E3:E8 moeten leeg blijven.

Formule in E2

=LET(
  bedrag, B2:B8,
  weekend, C2:C8,
  goedgekeurd, D2:D8,
  um, $G$2,
  ALS.VOORWAARDEN(
    NIET(goedgekeurd), "Kritiek",
    weekend * (bedrag >= um) > 0, "Hoog",
    weekend + (bedrag >= um) > 0, "Middel",
    WAAR, "Laag"
  )
)
=LET(
  bedrag; B2:B8;
  weekend; C2:C8;
  goedgekeurd; D2:D8;
  um; $G$2;
  ALS.VOORWAARDEN(
    NIET(goedgekeurd); "Kritiek";
    weekend * (bedrag >= um) > 0; "Hoog";
    weekend + (bedrag >= um) > 0; "Middel";
    WAAR; "Laag"
  )
)

Resultaat: Hoog / Laag / Middel / Middel / Kritiek / Middel / KritiekHoog / Laag / Middel / Middel / Kritiek / Middel / Kritiek

Stap voor stap
  1. LET legt vier namen vast. bedrag, weekend en goedgekeurd bevatten elk zeven waarden (B2:B8, C2:C8, D2:D8); um bevat 84,00084.000 uit G2.
  2. Voorwaarde 1, NIET(goedgekeurd), is een lijst van zeven WAAR/ONWAAR-waarden: ONWAAR, ONWAAR, ONWAAR, ONWAAR, WAAR, ONWAAR, WAAR. De boekingen JE-0431 en JE-0440 zijn niet goedgekeurd.
  3. Voorwaarde 2: bedrag >= um geeft WAAR, ONWAAR, ONWAAR, WAAR, ONWAAR, WAAR, ONWAAR. Vermenigvuldigd met weekend (WAAR, ONWAAR, WAAR, ONWAAR, ONWAAR, ONWAAR, WAAR) zijn de producten 1, 0, 0, 0, 0, 0, 0, en > 0 laat alleen de eerste boeking WAAR.
  4. Voorwaarde 3: de twee lijsten optellen geeft 2, 0, 1, 1, 0, 1, 1, dus > 0 is WAAR zodra minstens één van de twee geldt: boekingen 1, 3, 4, 6 en 7.
  5. Per positie neemt ALS.VOORWAARDEN de eerste ware voorwaarde. JE-0412: voorwaarde 1 ONWAAR, voorwaarde 2 WAAR, dus Hoog. JE-0413: alleen het WAAR-paar geldt, dus Laag. JE-0419 en JE-0420: voorwaarde 3, dus Middel.
  6. JE-0431 en JE-0440 voldoen aan voorwaarde 1 en krijgen Kritiek, ook al voldoet JE-0440 ook aan voorwaarde 3, omdat de goedkeuringstoets voorgaat. JE-0432 is precies 84,00084.000, dus >= maakt er Middel van.
  7. De zeven resultaten lopen over in E2:E8: Hoog, Laag, Middel, Middel, Kritiek, Middel, Kritiek. Zet G2 op 100,000100.000, dan zakt JE-0420 (91,00091.000) naar Laag en blijft JE-0412 Hoog.

Let op: Wissel je de voorwaarden 2 en 3 om, dan wordt JE-0412 (weekend en boven de materialiteit) Middel in plaats van Hoog, zonder enige foutmelding, want voorwaarde 3 is ook WAAR voor die boeking. De specifiekste regel moet vóór de regel staan die hem insluit.

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

Waarom het werkt

De voorwaarden stellen verschillende vragen over verschillende kolommen (goedkeuring, weekend, omvang), dus een tabel met grenzen kan ze niet uitdrukken; ALS.VOORWAARDEN kan het wel, en de LET-namen maken elke regel leesbaar. EN en OF zouden de zeven waarden samenvouwen tot één WAAR of ONWAAR, daarom gebruiken de regels * voor EN en + voor OF, die voor elke positie apart werken.

Bij veel klassen, of klassen die veranderen, is een tabel met grenzen en X.ZOEKEN beter (zie de variant, die een andere regelset gebruikt). Die tabel toont de grenzen op het werkblad en laat je ze wijzigen zonder de formule aan te raken.

Meer om op te letten

  • In de variant met X.ZOEKEN lijkt overeenkomstmodus 1 (eerstvolgende grotere item) goed, maar 9500 krijgt dan Middel, omdat de eerstvolgende grens erboven 25,00025.000 is. Voor klassen heb je -1 nodig, het eerstvolgende kleinere item.
  • LET en het overlopende resultaat hebben Excel 2021 of Microsoft 365 nodig; in Excel 2019 toont de formule #NAAM?. ALS.VOORWAARDEN zelf werkt vanaf Excel 2019, dus een versie met één formule per rij en zonder LET draait daar wel.
  • Tekst zoals 'Ja' in de kolom Goedgekeurd laat NIET(goedgekeurd) #WAARDE! opleveren. Houd de kolom met echte WAAR/ONWAAR-waarden.

Varianten

=X.ZOEKEN(B2:B8, $I$2:$I$4, $J$2:$J$4, "Geen klasse", -1)
=X.ZOEKEN(B2:B8; $I$2:$I$4; $J$2:$J$4; "Geen klasse"; -1)

Dit is een andere regelset: alleen het bedrag telt, met Laag onder 25,00025.000, Middel vanaf 25,00025.000 en Hoog vanaf 84,00084.000. Voor de zeven boekingen geeft het Hoog, Laag, Laag, Hoog, Laag, Hoog, Laag, dus het vervangt de ALS.VOORWAARDEN alleen als goedkeuring en weekend er niet toe doen; een nieuwe grens is een nieuwe tabelrij.

Veelgemaakte fouten

Veelgemaakte fouten
SymptoomOorzaakOplossing
#N/B op sommige rijen, andere goedDe cel toont #N/B bij sommige rijen, terwijl andere rijen goed zijn.Voor die rijen was geen enkele voorwaarde WAAR. Voeg een laatste paar toe met WAAR als voorwaarde en een vervangende waarde, of maak de laatste voorwaarde ruimer zodat die de overige gevallen dekt.
Grote waarden krijgen een lage klasseGrote waarden krijgen het label van een lage klasse, bijvoorbeeld 135.000 krijgt een lage klasse omdat de eerste voorwaarde B2>=6000 is.Bij voorwaarden van de vorm groter dan of gelijk aan zet je de hoogste grens eerst; bij kleiner dan of gelijk aan de laagste. Test de formule op de grenswaarden van elke klasse.
Te weinig argumenten, of #WAARDE!Excel wijst de formule af met een melding over te weinig argumenten, of het resultaat is #WAARDE!.Elke voorwaarde heeft een eigen waarde nodig, dus het aantal argumenten moet even zijn. Controleer ook of elke voorwaarde een vergelijking is die WAAR of ONWAAR oplevert, en geen tekst zoals een label.
#NAAM? in Excel 2016De werkmap toont #NAAM? als een collega met Excel 2016 hem opent.ALS.VOORWAARDEN bestaat vanaf Excel 2019. Heeft de ontvanger een oudere versie, bouw dan dezelfde logica met geneste ALS-functies of stuur het bestand met geplakte waarden.