Excel-formule: invoer valideren met vinkje -

Inhoudsopgave

Generieke formule

=IF(logical_test,"P","")

Samenvatting

Als u een vinkje wilt weergeven als een waarde "toegestaan" is op basis van een bestaande lijst met toegestane waarden, kunt u een formule gebruiken die is gebaseerd op de ALS-functie samen met de AANTAL.ALS-functie. In de voorbeeldshow is de formule in C5:

=IF(COUNTIF(allowed,B5),"✓","")

waar toegestaan is het benoemde bereik E5: E9.

Uitleg

Deze formule is een goed voorbeeld van het nesten van de ene functie in de andere. In de kern gebruikt deze formule de IF-functie die is ingesteld om een ​​vinkje (✓) te retourneren wanneer een logische test WAAR retourneert:

=IF(logical_test,"✓","")

Als de test FALSE retourneert, retourneert de formule een lege tekenreeks (""). Voor de logische test gebruiken we de AANTAL.ALS-functie als volgt:

COUNTIF(allowed,B5)

AANTAL.ALS telt exemplaren van de waarde in B5 binnen het toegestane bereik (E5: E9). Dit lijkt misschien "achterlijk", maar als je erover nadenkt, is het logisch. Als de waarde in B5 wordt gevonden in de toegestane lijst met waarden, retourneert AANTAL.ALS een positief getal (in dit geval 1). Als dit niet het geval is, retourneert AANTAL.ALS nul. Excel evalueert elk niet-nul getal als WAAR, dus dit werkt perfect als de logische test voor IF.

IF retourneert alleen WAAR als de waarde wordt gevonden in de toegestane lijst, en als dat het geval is, is het eindresultaat een vinkje (✓). Als de waarde niet wordt gevonden in de toegestane lijst, retourneert AANTAL.ALS nul, wat wordt geëvalueerd als FALSE. In dat geval is het uiteindelijke resultaat een lege string (""), die niets weergeeft.

Met vaste waarden

Het bovenstaande voorbeeld toont toegestane waarden in een celbereik, maar toegestane waarden kunnen ook hard worden gecodeerd in de formules als een matrixconstante zoals deze:

=IF(COUNTIF(("red","blue","green"),B5),"✓","")

Vinkje (✓)

Het invoegen van een vinkje in Excel kan verrassend uitdagend zijn en u zult veel artikelen op internet vinden waarin verschillende benaderingen worden uitgelegd. De eenvoudigste manier om het vinkje (✓) dat in deze formule wordt gebruikt, in Excel te krijgen, is door het gewoon te kopiëren en te plakken. Als u vanaf deze webpagina kopieert, plakt u deze in de formulebalk om ongewenste opmaak te voorkomen. U kunt ook rechtstreeks vanuit het bijgevoegde werkblad kopiëren en plakken.

Probeer deze variant als je problemen hebt met kopiëren en plakken. Het karakter zelf is Unicode 2713 (U + 2713), en kan ook als volgt in Excel worden ingevoerd met de UNICHAR-functie:

=UNICHAR(10003) // returns "✓"

Dus de originele formule kan als volgt worden geschreven:

=IF(COUNTIF(allowed,B5),UNICHAR(10003),"")

Opmerking: de functie UNICHAR is geïntroduceerd in Excel 2013.

De formule uitbreiden

Het basisidee in deze formule kan op veel slimme manieren worden uitgebreid. De onderstaande schermafbeelding toont bijvoorbeeld een formule die alleen een vinkje retourneert als alle testscores ten minste 65 zijn:

De formule in G5 is:

=IF(NOT(COUNTIF(B5:F5,"<65")),"✓","")

De NOT-functie keert het resultaat van AANTAL.ALS om. Als u dit verwarrend vindt, kunt u de ALS-formule afwisselend als volgt herstructureren:

=IF(COUNTIF(B5:F5,"<65"),"","✓")

In de versie van de formule lijkt de logica meer op de oorspronkelijke formule hierboven. We hebben het vinkje echter verplaatst naar het argument value_if_false, dus het vinkje zal alleen verschijnen als de telling van AANTAL.ALS nul is. Met andere woorden, het vinkje verschijnt alleen als er geen waarden lager dan 65 zijn gevonden.

Opmerking: u kunt ook voorwaardelijke opmaak gebruiken om geldige of ongeldige invoer te markeren, en gegevensvalidatie om invoer te beperken zodat alleen geldige gegevens worden toegestaan.

Interessante artikelen...