Funkcia VBA alebo (príklady) Ako používať operátora OR Logical Operator vo VBA?

Alebo je logická funkcia v ktoromkoľvek z programovacích jazykov a podobne vo VBA máme funkciu OR, pretože ide o logickú funkciu, výsledok daný touto funkciou je buď pravdivý, alebo nepravdivý, táto funkcia sa používa pre dve alebo veľa podmienok naraz a dáva skutočný výsledok, keď je niektorá z podmienok vrátená ako pravdivá.

Čo je funkcia OR vo VBA?

V programe Excel sú logické funkcie srdcom vzorcov, ktoré používame každý deň. Logické funkcie slúžia na vykonanie logického testu a poskytujú výsledok v boolovskom dátovom type, tj. TRUE alebo FALSE. Niektoré z logických vzorcov v programe Excel sú „funkcia IF, IFERROR v programe Excel, ISERROR v programe Excel, AND a OR excel.“ Dúfam, že ste ich dosť často používali ako funkciu pracovného hárka. Aj vo VBA môžeme použiť všetky z nich a v tomto článku vám vysvetlíme spôsoby použitia funkcie „VBA OR“.

Čo prvé vám napadne, keď si spomeniete na slovo „ALEBO“?

Jednoducho povedané, „ALEBO“ znamená „buď to, alebo ono“

S rovnakou myšlienkou je OR logická funkcia, ktorá dáva výsledok ako TRUE, ak je niektorý z logických testov TRUE, a ako výsledok dáva FALSE, ak žiadny z logických testov nie je TRUE.

Funguje to presne naopak ako funkcia VBA AND. Funkcia AND vráti TRUE, iba ak sú všetky logické podmienky TRUE. Ak nie je splnená ktorákoľvek z podmienok, dostaneme ako výsledok FALSE.

Vzorec funkcie VBA OR

Dovoľte mi vytvoriť syntax, aby ste pochopili túto funkciu.

(Logický test) ALEBO (Logický test) ALEBO (Logický test)

Najprv musíme spomenúť, čo je logický test, potom spomenúť slovo OR, potom spomenúť, čo je druhý logický test. Ak chcete vykonať logickejší test, potom po vykonaní logického testu uveďte slovo ALEBO.

Ak je zo všetkých logických testov, ktoré vykonáte, ak je niektorý z testov spokojný alebo pravdivý, dostaneme výsledok ako TRUE, ak žiadny alebo spokojný, potom je výsledok NEPRAVDA.

Príklady použitia funkcie OR vo VBA

Ukážeme vám jednoduchý príklad použitia funkcie OR vo VBA.

Pre pochopenie logickej funkcie VBA ALEBO vám ukážem príklad. Povedzme, že chceme vykonať logický test, či je číslo 25 väčšie ako 20 alebo číslo 50 menšie ako 30.

Krok 1: Vytvorte názov makra.

Krok 2: Definujte premennú ako reťazec.

Kód:

Sub OR_Example1 () Dim i As String End Sub

Krok 3: Teraz pre túto premennú priradíme hodnotu pomocou logického testu ALEBO.

Kód:

Sub OR_Example1 () Dim i As String i = End Sub

Krok 4: Náš prvý logický test je 25> 20 .

Kód:

Sub OR_Example1 () Dim i As String i = 25> 20 End Sub

Krok 5: Teraz po prvom logickom teste uveďte slovo OR a zadajte druhý logický test.

Kód:

Sub OR_Example1 () Dim i As String i = 25> 20 alebo 50 <30 End Sub

Krok 6: Ok, teraz funkcia VBA OR testuje, či sú logické testy TRUE alebo FALSE. Teraz priraďte výsledok premennej k schránke správ VBA .

Kód:

Sub OR_Example1 () Dim i As String i = 25> 20 alebo 50 <30 MsgBox i End Sub

Krok 7: Spustite makro a aký je výsledok.

Výsledok sme dostali ako PRAVDA, pretože z dvoch logických testov, ktoré sme poskytli, je jeden test PRAVDA, takže výsledok je PRAVDA.

25 je väčšie ako 20 a 50 nie je menšie ako 30. V tomto prípade je prvý logický test TRUE, ale druhý FALSE. Pretože sme použili funkciu VBA OR, vyžaduje, aby bola niektorá z podmienok TRUE, aby bol výsledok TRUE.

Teraz sa pozrite na nižšie uvedený kód.

Kód:

Sub OR_Example1 () Dim i As String i = 25 = 20 alebo 50 = 30 MsgBox i End Sub

Mám zmeny logických testovacích rovníc z> a <na rovnaké (=) znamienko. Týmto sa vráti FALSE ako výsledok, pretože 25 sa nerovná 20 a 50 sa nerovná 30.

Funkcia VBA ALEBO s podmienkou IF je výkonná

Ako som povedal, OR môže vo výsledku vrátiť buď TRUE, alebo FALSE, ale s ďalšou logickou funkciou „IF“ môžeme s výsledkami manipulovať podľa našich potrieb.

Zopakujte zhora rovnaké logické testy, funkcia OR vrátila iba hodnotu TRUE alebo FALSE, ale skombinujme túto operáciu OR s IF.

Krok 1: Pred vykonaním akejkoľvek skúšky otvorte funkciu IF .

Kód:

Sub OR_Example2 () Dim i As String IF End Sub

Krok 2: Teraz vykonajte testy pomocou funkcie OR .

Kód:

Sub OR_Example2 () Dim i As String IF 25 = 20 alebo 50 = 30 End Sub

Step 3: Put the word “Then” and write the result. If the condition is TRUE, assign the value to the variable as “Condition is Satisfied.”

Code:

Sub OR_Example2() Dim i As String If 25 = 20 Or 50 = 30 Then i = "Condition is Satisfied" End Sub

Step 4: If the condition is FALSE, then we need a different result, so put the word “ELSE” and, in the next line, assign the value to the variable “what should be the result if the condition or logical test is FALSE.”

Code:

Sub OR_Example2() Dim i As String If 25 = 20 Or 50 = 30 Then i = "Condition is Satisfied" Else i = "Condition is not Satisfied" End Sub

Step 5: End the IF function with the word “End If.”

Code:

Sub OR_Example2() Dim i As String If 25 = 20 Or 50 = 30 Then i = "Condition is Satisfied" Else i = "Condition is not Satisfied" End If End Sub

Step 6: Assign the value of the variable result to the message box.

Code:

Sub OR_Example2() Dim i As String If 25 = 20 Or 50 = 30 Then i = "Condition is Satisfied" Else i = "Condition is not Satisfied" End If MsgBox i End Sub

Run the macro, if the logical test is TRUE, we will get the result as “Condition is Satisfied,” or else we will get “Condition is not Satisfied.”

We got the result as “Condition is not Satisfied” because both the logical tests are FALSE.

Now I will change the logical tests.

Code:

Sub OR_Example2() Dim i As String If 25> 20 Or 50 < 30 Then i = "Condition is Satisfied" Else i = "Condition is not Satisfied" End If MsgBox i End Sub

I will run the macro and see what the result is.

Like this, we can use one logical function with other logical functions to arrive at the results.

Solve the below case study to get used to logical functions.

Case Study to Solve

I have employee names and their respective departments.

If you have tried and not found the result, then you can refer below code to understand the logic.

Code:

Sub Bonus_Calculation() Dim i As Long For i = 2 To 10 If Cells(i, 2).Value = "Finance" Or Cells(i, 2).Value = "IT" Then Cells(i, 3).Value = 5000 Else Cells(i, 3).Value = 1000 End If Next i End Sub

Ak je zamestnanec z kategórie „Financie“ alebo „IT“, mal by dostať bonus ako „5 000“. Pre ostatných zamestnancov oddelenia je bonus „1 000“.

Vykonajte logický test a dospejte k výsledkom.

Zaujímavé články...