AK ALEBO nie sú jediným výrokom, jedná sa o dve logické funkcie, ktoré sa vo VBA niekedy používajú, tieto dve logické funkcie používame spoločne, keď máme na kontrolu viac ako jedno kritérium, a ak je niektoré z kritérií splnené, dostaneme skutočný výsledok, keď použijeme príkaz if alebo príkaz medzi dvoma kritériami príkazu If.
IF OR Funkcia vo VBA
Logické funkcie sú jadrom všetkých výpočtov založených na kritériách. „IF“ je najpopulárnejšia logická funkcia, či už ako funkcia listu alebo ako funkcia VBA, ktorá vynikajúco slúži pre naše potreby. Ale ešte jedna logická funkcia, „OR“ v programe Excel, je najviac podceňovanou funkciou. Je tiež dôležité zvládnuť, pokiaľ ide o riešenie zložitých výpočtov. V tomto článku vás podrobne prevedieme funkciou VBA IF OR. Prečítajte si celý článok a získate podrobnú funkciu.

Ako používať IF s funkciou OR vo VBA?
Ukážeme vám jednoduchý príklad použitia funkcie IF OR vo VBA.
Kombinácia logických funkcií je najlepším párom v programe Excel. Keď skombinujete veľa logických vzorcov vo vnútri iného logického vzorca, znamená to, že výpočet vyžaduje na testovanie veľa podmienok.
Teraz sa pozrite na syntax funkcie IF OR vo VBA.
(Test) ALEBO (Test) ALEBO (Test)
Je to to isté, čo sme videli v príklade pracovného hárka. Pre lepšie pochopenie si pozrite nasledujúci príklad.

Máme tu cenu za predchádzajúci mesiac, priemernú cenu za posledných 6 mesiacov a aktuálnu mesačnú cenu.
Aby sme sa rozhodli, či si produkt kúpime, alebo nie, musíme tu urobiť nejaké testy a tieto testy sú.
Ak je aktuálna cena nižšia alebo rovná jednej z ďalších dvoch cien, mali by sme výsledok dostať ako „kúpiť“, inak by sme mali dostať výsledok ako „nekupovať“ .
Krok 1: Otvorte podmienku IF vo vnútri podprocesu.
Kód:
Sub IF_OR_Example1 () Ak Koniec Sub

Krok 2: Vo vnútri podmienky IF použite prvý logický test ako Rozsah („D2“). Hodnota <= Rozsah („B2“). Hodnota
Kód:
Sub IF_OR_Example1 () Ak Rozsah („D2“). Hodnota <= Rozsah („B2“). Hodnota Koniec Sub

Krok 3: Prvá logická podmienka je hotová, teraz otvorte príkaz OR.
Kód:
Sub IF_OR_Example1 () If Range ("D2"). Hodnota <= Range ("B2"). Hodnota ALEBO End Sub

Krok 4: Teraz použite druhú logickú podmienku ako Rozsah („D2“). Hodnota <= Rozsah („C2“). Hodnota
Kód:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value OR Range ("D2"). Value <= Range ("C2"). Value End Sub

Krok 5: Dobre, máme tu hotové logické testy. Po logických testoch zadajte slovo „Then“.
Kód:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value Or Range ("D2"). Value <= Range ("C2"). Value Then End Sub

Krok 6: Do ďalšieho riadku napíš, čo by malo byť výsledkom, ak je logický test TRUE. Ak je podmienka PRAVDA, potrebujeme výsledok ako „Kúpiť“ v bunke E2.
Kód:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value Or Range ("D2"). Value <= Range ("C2"). Value Then Range ("E2"). Hodnota = „Kúpiť“ koncový sub

Krok 7: Ak je výsledok NEPRAVDA, mali by sme dostať výsledok ako „Nekupujte“. Takže do nasledujúceho riadku vložte „Else“ a napíšte kód do nasledujúceho riadku.
Kód:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value Or Range ("D2"). Value <= Range ("C2"). Value Then Range ("E2"). Hodnota = "Kúpiť", iný rozsah ("E2"). Hodnota = "Nekupovať", koncový sub

Krok 8: Zatvorte príkaz IF slovom „End If“.
Kód:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value Or Range ("D2"). Value <= Range ("C2"). Value Then Range ("E2"). Hodnota = "Kúpiť", iný rozsah ("E2"). Hodnota = "Nekupovať" Koniec, ak Koniec Sub

Dobre, s kódovacou časťou sme hotoví.
Spustime tento kód pomocou F5 alebo manuálne cez voľbu run a pozrime sa, aký je výsledok v bunke E2.

Výsledok sme dostali ako „Kúpiť“, pretože aktuálna mesačná cena spoločnosti Apple je nižšia ako cena „predchádzajúceho mesiaca“ aj „priemernej ceny za 6 mesiacov“.
Funkcia IF ALEBO VBA so slučkami (pokročilá)
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 to 9 If Range ("D" & k). Hodnota <= Range ("B" & k). Value or Range ("D" & k). Value <= Range ("C" & k) .Hodnota Potom Range ("E" & k) .Hodnota = "Kúpiť" Else Range ("E" & k) .Hodnota = "Nekupovať" Koniec, ak Ďalej k Koniec Sub