
Een basale maar heel belangrijke functie binnen Excel is ALS (Engels: IF). Hierbij wordt een logische vergelijking bekeken en aan de hand van diens uitkomst – waar of onwaar – worden twee verschillende acties uitgevoerd. Maar dat is slechts het begin, de functie is relatief eenvoudig uit te breiden waardoor hij veel programmeerbaarder is.
Met de functie ALS is een logische vergelijking op te stellen, een formule die een ‘als-dit-dan-dat’ uitvoert. De bekendste toepassing is het instellen van een drempelwaarde waarbij een bepaalde actie wordt uitgevoerd, bijvoorbeeld het invullen van een celwaarde of het toepassen van voorwaardelijke opmaak. De syntaxis komt neer op =ALS(voorwaarde;actie1;actie2) (=IF(voorwaarde,actie1,actie2)) waarbij actie1 wordt uitgevoerd als de vergelijking WAAR oplevert en actie2 wordt uitgevoerd bij een ONWAAR.
>> Meer over logische vergelijkingen leest u in het artikel: Voer conditionele opdrachten uit met booleaanse waarden.
Simpele ALS-functie
Een simpel voorbeeld van Microsoft zelf is een statusveld dat automatisch wordt ingevuld aan de hand van een logische vergelijking. In dit geval gaat het om een beoordeling of een bedrag binnen het budget valt. In het voorbeeld is het gebudgetteerde bedrag opgenomen in kolom B en het werkelijke bedrag in kolom C. Deze twee kunnen eenvoudig met elkaar worden vergeleken om in kolom D aan te geven of de uitgave volgens begroting is geweest.
De logische vergelijking is dan =ALS(C2>B2;“JA”;“NEE”), waarbij tijdens de eerste parameter wordt vergeleken of C[celnummer] hoger is dan B[celnummer]. Is dat een WAAR oplevert, wordt actie1 uitgevoerd en de tekst ‘NEE’ ingevuld, om aan te geven dat het budget is overschreden. Bij een ONWAAR wordt actie2 uitgevoerd, het invullen van ‘JA’. Door deze cel te selecteren en naar beneden te trekken, wordt de formule toegepast op alle geselecteerde cellen in kolom D.

ALS met meerdere voorwaarden
Nog een stapje verder: u heeft niet alleen verschillende voorwaarden, maar ook verschillende uitkomsten per voorwaarde. Daar biedt nesting een oplossing, waarbij een ALS-functie binnen een ALS-functie kan worden gebruikt. Als voorbeeld een simpele glijdende temperatuurschaal, waarbij alles onder 0 graden Celsius als ‘Vriezend’ wordt weergegeven, tussen 1 en 15 als ‘Normaal’, 16-24 als ‘Kamertemperatuur’, 25-39 als ‘Warm’, 40-59 als ‘Heet’, 60-79 als ‘Zeer heet’ en alles boven de 80 als ‘Kokend’.
Daarbij wordt elke vervolgstap in de schaal een voorwaarde die gekoppeld is aan actie2. Als een waarde wordt gevonden: actie1. Als het iets anders is: actie2, wat opnieuw een logische vergelijking is. Met daarin opnieuw een logische vergelijking waarin actie2 (of actie3 in dat geval) wéér een logische vergelijking is. Dit kunt u als een matroesjka dieper en dieper doorvoeren, tot aan een maximum van 64 functies. Een simpel begin zou zijn met drie verschillende resultaten: Vriezend, Nominaal of Kokend. U formuleert dat als =ALS(B2>80;”Kokend”;ALS(B2>0;”Nominaal”;ALS(B2<0;”Vriezend”)))
U begint u de schaal met temperaturen boven de 80 graden: =ALS ([cel]>80;”Kokend”;actie2). Dat betekent dat als een waarde boven de 80 wordt gevonden, het veld wordt ingevuld met de tekst ‘Kokend’. Zo niet, dan wordt actie2 uitgevoerd en dat is in dit geval een geneste ALS-functie om de volgende stap te evalueren. Dat wordt ‘Zeer heet’ met de waardes tot en met 60 graden Celsius. Dus =ALS([cel]>80;”Kokend”;ALS([cel]>60;”Zeer heet”;actie3)) waarbij actie3 de volgende stap wordt. Let daarbij op dat elke geneste functie zijn eigen haakjes heeft, wat betekent dat het aantal sluitende haakjes overeenkomt met het aantal ALS-functies dat u gebruikt. Excel geeft deze haakjes in de formulebalk gekleurd per geneste functie weer, om het overzichtelijker te maken.
In dit voorbeeld wordt de formule dan als volgt:
=ALS(B2>=80;”Kokend”;ALS(B2>=60;”Zeer heet”;ALS(B2>=40;”Heet”;ALS(B2>=25;”Warm”;ALS(B2>=16;”Kamertemperatuur”;ALS(B2>=1;”Normaal”;”Vriezend”))))))

Er is ook een alternatief voor gebruikers van Microsoft 365 in de vorm van ALS.VOORWAARDEN (IFS). De logica hiervan is hetzelfde, maar daarbij hoeven geen geneste ALS-functies worden gebruikt en kunnen ze worden geketend. De formule wordt op ongeveer dezelfde manier geëvalueerd als hierboven: als een vergelijking WAAR oplevert, wordt de daarachter gedefinieerde actie uitgevoerd. Bij het laatste element geeft u ;WAAR;[“Tekst”] (,TRUE,[“Tekst”]) die wordt weergegeven als er niet is voldaan aan de voorgaande voorwaarden. In her eerdere voorbeeld met de temperatuurschaal zou dat dan de volgende formule opleveren:
=ALS.VOORWAARDEN(B2>=80;”Kokend”;B2>=60;”Zeer heet”;B2>=40;”Heet”;B2>=25;”Warm”;B2>=16;”Kamertemperatuur”;B2>=1;”Normaal”;WAAR;”Vriezend”)

Fouten opsporen met ALS
Op deze manier is ALS in te zetten om foute cellen op te sporen. Daarbij gebruikt u ISFOUT (ISERROR) binnen een ALS-functie. Actie1 is daarbij wat wordt uitgevoerd wanneer een fout wordt aangetroffen en actie2 wanneer de fout niet wordt gevonden. Met een formule als =ALS(ISFOUT(A1,Z10);“Er is een fout gevonden”;[alternatieve berekening]) (of =IF(ISERROR(A1,Z10),”Er is een fout gevonden”, [alternatieve berekening])) wordt gecontroleerd of een cel een fout bevat. Als dat zo is wordt actie1 uitgevoerd, wat het bericht ‘Er is een fout gevonden’ oplevert. Als alles in orde is wordt actie2 uitgevoerd. De functie ISFOUT2 doet hetzelfde als ISFOUT, maar zondert niet beschikbare velden – #N/B (#N/A) – uit.
cm:Excel
Dé nieuwsbrief voor de financial die meer wil weten over Excel.
In de maandelijkse nieuwsbrief staat informatie over nieuwe toepassingen, handigheidjes, tips en trucs en opleidingen.
Schrijf u vandaag nog in voor onze gratis Excel nieuwsbrief!