VBA ALS OF

ALS OF geen enkele instructie zijn, zijn dit twee logische functies die soms samen in VBA worden gebruikt, we gebruiken deze twee logische functies samen als we meer dan één criterium hebben om mee te controleren en als aan een van de criteria is voldaan, krijgen we het ware resultaat, wanneer we de if-instructie gebruiken. Of -instructie wordt gebruikt tussen de twee criteria van de If-instructie.

ALS OF Functie in VBA

Logische functies vormen het hart van alle op criteria gebaseerde berekeningen. "ALS" is de meest populaire logische functie, of het nu als werkbladfunctie of als VBA-functie is, het dient uitstekend voor onze behoeften. Maar nog een logische functie "OF" in Excel is de meest onderschatte functie. Het is ook belangrijk om onder de knie te krijgen als het gaat om het oplossen van complexe berekeningen. In dit artikel zullen we u in detail door de VBA IF OR-functie leiden. Lees het volledige artikel om de functie in detail te krijgen.

Hoe IF met OR-functie in VBA te gebruiken?

We zullen u een eenvoudig voorbeeld laten zien van het gebruik van de IF OR-functie in VBA.

U kunt deze VBA IF OF Excel-sjabloon hier downloaden - VBA IF OF Excel-sjabloon

Combinatie van logische functies is de beste combinatie in Excel. Wanneer u veel logische formules combineert in de andere logische formule, suggereert dit dat de berekening veel voorwaarden vereist om te testen.

Kijk nu naar de syntaxis van de IF OR-functie in VBA.

[Test] OF [Test] OF [Test]

Dit is hetzelfde als in het werkbladvoorbeeld. Bekijk het onderstaande voorbeeld voor een beter begrip.

We hebben de prijs van de vorige maand, de gemiddelde prijs van de laatste 6 maanden en de huidige maandelijkse prijs hier.

Om te beslissen of we het product al dan niet kopen, moeten we hier enkele tests doen en die tests zijn.

Als de huidige prijs lager is dan of gelijk is aan een van de andere twee prijzen, zouden we het resultaat moeten krijgen als "Koop" of anders zouden we het resultaat moeten krijgen als "Niet kopen" .

Stap 1: Open ALS-voorwaarde binnen de subprocedure.

Code:

 Sub IF_OR_Example1 () Als End Sub 

Stap 2: Pas binnen de ALS-voorwaarde de eerste logische test toe als Bereik ("D2"). Waarde <= Bereik ("B2"). Waarde

Code:

 Sub IF_OR_Example1 () If Bereik ("D2"). Waarde <= Bereik ("B2"). Waarde End Sub 

Stap 3: De eerste logische voorwaarde is voltooid, open nu de OR-instructie.

Code:

 Sub IF_OR_Example1 () If Range ("D2"). Waarde <= Range ("B2"). Waarde OR End Sub 

Stap 4: Pas nu de tweede logische voorwaarde toe als Bereik ("D2"). Waarde <= Bereik ("C2"). Waarde

Code:

 Sub IF_OR_Example1 () If Bereik ("D2"). Waarde <= Bereik ("B2"). Waarde OR Bereik ("D2"). Waarde <= Bereik ("C2"). Waarde End Sub 

Stap 5: Ok, we zijn klaar met de logische tests hier. Na de logische tests zet u het woord "Dan".

Code:

 Sub IF_OR_Example1 () If Range ("D2"). Waarde <= Range ("B2"). Waarde of bereik ("D2"). Waarde <= Range ("C2"). Waarde Then End Sub 

Stap 6: Schrijf in de volgende regel wat het resultaat zou moeten zijn als de logische test WAAR is. Als de voorwaarde WAAR is, hebben we het resultaat nodig als "Kopen" in cel E2.

Code:

 Sub IF_OR_Example1 () If Bereik ("D2"). Waarde <= Bereik ("B2"). Waarde of bereik ("D2"). Waarde <= Bereik ("C2"). Waarde Dan bereik ("E2"). Value = "Koop" End Sub 

Stap 7: Als het resultaat FALSE is, zouden we het resultaat moeten krijgen als "Niet kopen". Dus zet in de volgende regel "Else" en schrijf de code op de volgende regel.

Code:

 Sub IF_OR_Example1 () If Bereik ("D2"). Waarde <= Bereik ("B2"). Waarde of bereik ("D2"). Waarde <= Bereik ("C2"). Waarde Dan bereik ("E2"). Value = "Koop" Else Range ("E2"). Value = "Koop niet" End Sub 

Stap 8: Sluit de IF statement met het woord “End If”.

Code:

 Sub IF_OR_Example1 () If Bereik ("D2"). Waarde <= Bereik ("B2"). Waarde of bereik ("D2"). Waarde <= Bereik ("C2"). Waarde Dan bereik ("E2"). Value = "Koop" Else Range ("E2"). Value = "Koop niet" End If End Sub 

Ok, we zijn klaar met het coderingsgedeelte.

Laten we deze code uitvoeren met F5 of handmatig via de optie Uitvoeren en kijken wat het resultaat is in cel E2.

We kregen het resultaat als "Koop" omdat de huidige maandelijkse prijs van Apple lager is dan de prijs van zowel "Vorige maand" als "Gemiddelde prijs over 6 maanden".

IF OF VBA-functie met loops (geavanceerd)

Zodra u de formule begrijpt, probeert u deze met een groter aantal cellen te gebruiken. In het geval van een groter aantal cellen kunnen we geen enkele regel code schrijven, dus moeten we VBA-lussen gebruiken.

Voor de bovenstaande set gegevens heb ik nog een paar regels toegevoegd.

We moeten hier de For Next-lus gebruiken.

Houd gewoon de huidige code zoals deze is.

Declareer de variabele als een geheel getal.

Open nu For Next Loop van 2 tot 9.

Nu, waar we celverwijzing hebben, verandert het huidige nummer en voegt de variabele “k” ermee samen.

Bijvoorbeeld Bereik ("D2"). Waarde moet Bereik ("D" & k) zijn . Waarde

Voer nu de code uit, we zouden de status in alle cellen moeten krijgen.

U kunt de onderstaande code kopiëren.

Code:

 Sub IF_OR_Example1() Dim k As Integer For k = 2 To 9 If Range("D" & k).Value <= Range("B" & k).Value Or Range("D" & k).Value <= Range("C" & k).Value Then Range("E" & k).Value = "Buy" Else Range("E" & k).Value = "Do Not Buy" End If Next k End Sub