VBA ИЛИ функция (примери) - Как да използвам ИЛИ Логически оператор във VBA?

Или е логическа функция в който и да е от програмните езици и подобно във VBA имаме функция OR, тъй като е логическа функция, резултатът, даден от тази функция, е или true, или false, тази функция се използва за две или много условия заедно и дава us true резултат, когато някое от условията се върне true.

Какво е OR функция във VBA?

В Excel, логическите функции са сърцевината на формулите, които използваме ежедневно. Логическите функции са там, за да проведат логическия тест и дават резултат в булев тип данни, т.е. TRUE или FALSE. Някои от логическите формули в Excel са „IF, IFERROR в Excel, ISERROR в Excel, И ИЛИ функция на Excel.“ Надявам се, че сте ги използвали доста често като функция на работен лист. Във VBA също можем да използваме всички тях и в тази статия ще ви обясним начините за използване на функцията „VBA ИЛИ“.

Какво е първото нещо, което ви идва на ум, когато мислите за думата „ИЛИ“?

С прости думи, „ИЛИ“ означава „или това или онова“

Със същата идея OR е логическа функция, която дава резултата като TRUE, ако някой от логическите тестове е TRUE и дава FALSE като резултат, ако нито един от логическите тестове не е TRUE.

Това работи точно срещу функцията VBA AND. Функцията AND връща TRUE само ако всички логически условия са TRUE. Ако някой от условията не е изпълнен, в резултат ще получим FALSE.

Формулата на VBA ИЛИ функция

Позволете ми да съставя синтаксис, за да разберете функцията.

(Логически тест) ИЛИ (Логически тест) ИЛИ (Логически тест)

Първо трябва да споменем какво е логическият тест, след това да споменем думата ИЛИ, след това да споменем какво е вторият логически тест. Ако искате да проведете по-логичен тест, тогава споменете думата ИЛИ след измислянето на логически тест.

От всички логически тестове, които правите, ако някой от тестовете е удовлетворен или вярен, тогава ще получим резултата като TRUE, ако няма или е удовлетворен, тогава резултатът е FALSE.

Примери за използване на OR функция във VBA

Ще ви покажем прост пример за използване на функцията OR във VBA.

За да разберете логическата функция на VBA ИЛИ нека ви дам пример. Да кажем, че искаме да проведем логическия тест дали числото 25 е по-голямо от 20 или числото 50 е по-малко от 30.

Стъпка 1: Създайте име на макрос.

Стъпка 2: Определете променливата като низ.

Код:

Sub OR_Example1 () Dim i As String End Sub

Стъпка 3: Сега, за тази променлива, ние ще присвоим стойността чрез ИЛИ логическия тест.

Код:

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

Стъпка 4: Първият ни логически тест е 25> 20 .

Код:

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

Стъпка 5: Сега, след първия логически тест, споменете думата ИЛИ и въведете втория логически тест.

Код:

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

Стъпка 6: Добре, сега функцията VBA OR проверява дали логическите тестове са TRUE или FALSE. Сега присвойте резултата от променливата на полето за съобщения VBA .

Код:

Под OR_Example1 () Dim i As String i = 25> 20 или 50 <30 MsgBox i End Sub

Стъпка 7: Стартирайте макроса и какъв е резултатът.

Получихме резултата като TRUE, тъй като от два логически теста, които сме предоставили, един тест е TRUE, така че резултатът е TRUE.

25 е по-голямо от 20, а 50 не по-малко от 30. В този случай първият логически тест е TRUE, но вторият е FALSE. Тъй като сме приложили функцията VBA ИЛИ, тя се нуждае от някое от условията да е TRUE, за да получи резултата като TRUE.

Сега вижте кода по-долу.

Код:

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

Имам промени в уравненията на логическия тест от> и <на знак за равен (=). Това ще върне FALSE като резултат, защото 25 не е равно на 20 и 50 не е равно на 30.

VBA ИЛИ Функцията с IF условие е мощна

Както казах, OR може да върне TRUE или FALSE като резултат, но с другата логическа функция „IF“ можем да манипулираме резултатите според нашите нужди.

Вземете същите логически тестове отгоре, ИЛИ е върнало само ИСТИНА или ФАЛША, но нека комбинираме това ИЛИ с АКО.

Стъпка 1: Преди провеждане на какъвто и да е тест, отворете функцията IF .

Код:

Sub OR_Example2 () Dim i As String IF End Sub

Стъпка 2: Сега проведете тестове, като използвате функцията OR .

Код:

Sub OR_Example2 () Dim i As String IF 25 = 20 или 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

Ако служителят е от „Финанси“ или „ИТ“, тогава той трябва да получи бонуса като „5000“. За останалите служители на отдела бонусът е „1000“.

Проведете логическия тест и стигнете до резултатите.

Интересни статии...