VBA ALS OF - Hoe IF-voorwaarde met OF-functie te gebruiken in Excel VBA?

Inhoudsopgave

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 voldoet uitstekend aan onze behoeften. Maar nog een logische functie, "OR" 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.

Een 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 we zagen 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, moeten we het resultaat krijgen als 'Koop' of anders het resultaat als 'Niet kopen'.

Stap 1: Open ALS-voorwaarde binnen de subprocedure.

Code:

Sub IF_OR_Example1 () Als End Sub

Stap 2: Pas binnen de IF-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. Zet na de logische tests het woord "Dan".

Code:

Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value or Range ("D2"). Value <= Range ("C2"). Value 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 ONWAAR 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-instructie 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)

Once you understand the formula, try to use it with a larger number of cells. In the case of a larger number of cells, we cannot write any line of code, so we need to use VBA loops.

For the above set of data, I have added a few more lines.

We need to use the For Next loop here.

Just keep the current code as it is.

Declare the variable as an integer.

Now open For Next Loop from 2 to 9.

Now, wherever we have cell reference, change the current number, and concatenate the variable “k” with them.

For example, Range (“D2”).Value should be Range (“D” & k).Value

Now run the code. We should get the status in all the cells.

You can copy the code below.

Code:

Sub IF_OR_Example1 () Dim k As Integer For k = 2 tot 9 If Range ("D" & k) .Value <= Range ("B" & k) .Value Of Range ("D" & k) .Value <= Range ("C" & k) .Value Then Range ("E" & k) .Value = "Buy" Else Range ("E" & k) .Value = "Niet kopen" End If Next k End Sub

Interessante artikelen...