Excel VBA IF verklaringen

IF-verklaring in VBA-code is een van de meest gebruikte waarmee u een keuze kunt maken. ALS-functie in VBA is anders in vergelijking met EXCEL IF-functie, dwz in Excel IF-functie of formule wordt gecontroleerd of de gegeven voorwaarde of criteria WAAR of ONWAAR is en retourneert vervolgens een waarde op basis van de evaluatie, terwijl de VBA IF-instructie alleen de eerste uitvoert de helft van de instructie, dwz controleer of de voorwaarde WAAR of ONWAAR is, en daarnaast moet de instructie worden ingevoerd in de VBA IF-instructie om de resterende bewerking of taak uit te voeren.

Drie parameters waarmee u rekening moet houden of rekening moet houden tijdens het schrijven van de VBA IF-instructiecode.

  • Een voorwaarde of parameter om te testen.
  • Een bewerking of taak die moet worden uitgevoerd als de voorwaarde WAAR is.
  • Een bewerking of taak die moet worden uitgevoerd als de voorwaarde ONWAAR is

Het is een besluitvormingsverklaring die wordt gebruikt om een ​​codeblok uit te voeren.

Het voert een taak of bewerking uit wanneer een voorwaarde WAAR is, anders niets doen of iets anders doen. Gewoonlijk bestaat een if-instructie uit een Booleaanse expressie gevolgd door statements (dit kan er een of meerdere zijn).

Eenvoudig om de complexe toestand kan worden geschreven in VBA IF-verklaring.

Hieronder worden de verschillende soorten VBA IF-overzichten met hun syntaxis en voorbeelden weergegeven.

IF Statement TypesSyntaxis
ALS DANAls dan (verklaring)

Stop als

ALS ANDERSIf Then (Statement1)

Anders:

(Statement2)

Stop als

ALS ELSEIFALS dan

(Statement1)

ELSEIF Dan

(Statement2)

Stop als

ANDERS EN ELSEIF

(ELSEIF-verklaring moet eerst komen, daarna ELSE)

ALS (voorwaarde1 is waar) Dan

(Statement1)

ELSEIF (voorwaarde 2 is waar)

(Statement2)

ANDERS

(Statement3)

Stop als

ALS ZONDER ENDIF

(alleen regelcode)

Gebruikt wanneer ELSE of ELSE IF-instructie niet wordt gebruikt

ALS (voorwaarde is waar) Dan (Verklaring)

Afgezien van de bovenstaande instructie, kan de NESTED IF- instructie ook worden gebruikt, dwz een if- of ELSEIF-instructie in een andere if- of ELSEIF-instructie.

Hoe IF-verklaringen te gebruiken in Excel VBA?

We zullen de soorten leren en hoe VBA IF-verklaringen te gebruiken met enkele voorbeelden in Excel.

U kunt deze VBA IF-overzichten Excel-sjabloon hier downloaden - VBA IF-verklaringen Excel-sjabloon
  • Open een VB Editor-venster. Selecteer of klik op Visual Basic in de groep Code op het tabblad Ontwikkelaar of u kunt direct op Alt + F11 klikken.

  • Dit brengt ons naar Visual Basic coderingsvenster. Ga nu naar het menu Invoegen vanuit het VBA-venster en selecteer Module zoals hieronder weergegeven.

  • Nu de lege module is gemaakt, wordt deze ook een codevenster genoemd, waar u kunt beginnen met het schrijven van instructiecodes.

VBA ALS DAN Verklaring - Voorbeeld # 1

ALS DAN een eenvoudige vorm van VBA-verklaring is. Het formaat om een ​​code te schrijven is:

Als dan

U moet de overeenkomende End If- instructie gebruiken na het invoeren van de bovenstaande syntaxis . Wanneer de voorwaarde voldoet of de criteria waar zijn, worden alle regels tussen If Then en End If verwerkt.

Wanneer u Sub IF_THEN () typt als het eerste bericht zonder enige aanhalingstekens, kunt u zien dat Excel automatisch de regel Einde Sub onder de eerste berichtregel toevoegt wanneer u op Enter drukt. Nu moeten alle codes die u invoert zich tussen deze twee regels bevinden.

Code:

 Sub IF_THEN () Indien 3> 2 Dan is MsgBox "3 groter dan 2" End If End Sub 

Laten we eens kijken met de bovenstaande code, die een enkele regel met IF-instructie heeft die de waarde 3 verifieert of controleert.

Als de waarde "3" groter is dan "2", verschijnt een pop-upbericht met het bericht "3 is groter dan 2". Als u de waarde wijzigt van " 2 " in " 5 " in de VBA-code en deze uitvoert, gebeurt er niets. Omdat 3 niet groter is dan 5.

U kunt de macro uitvoeren door op de knop Sub uitvoeren te klikken of door op F5 te drukken. Het pop-upvenster van het VBA-berichtenvak verschijnt met het bericht "3 is groter dan 2"

VBA IF-THEN-ELSE Verklaring - Voorbeeld # 2

In dit scenario wordt de instructie IF & ELSE gebruikt om twee verschillende voorwaarden uit te voeren. Het formaat of de syntaxis om code te schrijven is:

Als dan

statement1

Anders:

statement2

Stop als

ALS u een onderstaande code uitvoert, dwz als cel B4 een waarde 7 bevat, krijgt u een berichtvenster met de tekst "Cel B4 heeft waarde 7" en als cel B4 een andere waarde dan 7 bevat, krijgt u een berichtvenster met 'Cell B4 heeft een andere waarde dan 7'.

Hier vindt, op basis van de in de cel aanwezige waarde, een ander resultaat plaats (dat wil zeggen meer dan één voorwaarde).

Code:

 Sub IF_THEN_ELSE () If Range ("B4"). Value = "7" Then MsgBox "Cell B4 heeft waarde 7" Else MsgBox "Cell B4 heeft een andere waarde dan 7" End If End Sub 

Nu bevat de cel "B4" een waarde 7, als ik boven de code voer, verschijnt de eerste voorwaarde.

Stel dat ik de waarde van cel "B4" heb gewijzigd van 7 in 5 zoals hieronder weergegeven.

Code:

 Sub IF_THEN_ELSE () If Range ("B4"). Value = "5" Then MsgBox "Cell B4 heeft waarde 7" Else MsgBox "Cell B4 heeft een andere waarde dan 7" End If End Sub 

Dus als ik boven de VBA IF-THEN-ELSE-code loop, verschijnt de tweede voorwaarde.

IF-THEN-ELSEIF-ELSE - Voorbeeld # 3

Het is een geavanceerde vorm van VBA als statement, het formaat of de syntaxis om een ​​code te schrijven is

ALS (voorwaarde1 is waar) Dan

(Statement1)

ELSEIF (voorwaarde 2 is waar)

(Statement2)

ANDERS

(Statement3)

Stop als

Het voordeel van deze code is, ELSE IF kan afzonderlijk of meerdere keren worden gebruikt (10 of 100 keer of meer dan dat) volgens uw vereiste.

Code:

 Sub IF_THEN_ELSEIF_ELSE () Als 5> 8 Dan is MsgBox "5 groter dan 8" ElseIf 6> 8 Dan MsgBox "6 is groter dan 8" ElseIf 7> 8 Dan MsgBox "7 is groter dan 8" Else MsgBox "5, 6 of 7 is kleiner dan 8 "End If End Sub 

Laten we eens kijken hoe de bovenstaande code werkt, Excel zal de eerste instructie initiëren of verwerken, wanneer deze opmerkt dat deze onjuist is, gaat deze door naar de volgende. Hier zijn alle ElseIf-argumenten of voorwaarde onwaar, daarom gaat het door totdat de voorwaarde waar is en het laatste resultaat van het Else-argument wordt weergegeven als een eindresultaat van de IF-instructie. dat wil zeggen MsgBox “5, 6 of 7 is kleiner dan 8” wat een WAAR argument is.

Wanneer u de code selecteert en uitvoert door op de knop Sub uitvoeren te klikken of door op F5 te drukken. Het pop-upvenster van het VBA-berichtenvak met een bericht met de vermelding "5, 6 of 7 is kleiner dan 8", wat een waar argument is

Nu kunt u deze macrocodes opslaan door deze te hernoemen als VBA_IF_STATEMENT onder de naamsectie van het tabblad Eigenschappen

Dingen om te onthouden

  • Wanneer de enkele regel van de instructie IF Then wordt gebruikt, hoeft u uiteindelijk End IF niet te gebruiken. Maar als we het in meer dan één regel splitsen, moet de instructie End If worden gebruikt.
  • In de VBA, IF-THEN-ELSEIF-ELSE verklaring, moeten ElseIf-argumenten altijd voor het Else-argument worden geplaatst.

Aanbevolen artikelen

Dit is een handleiding voor VBA IF-verklaringen. Hier hebben we besproken hoe IF-instructies in Excel VBA kunnen worden gebruikt, samen met praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen–

  1. VBA-arrays in Excel
  2. Handleiding voor VBA-nummerindeling
  3. Gids voor VBA Find
  4. Hoe VBA Do While Loop te gebruiken?

Categorie: