ВБА ИЛИ функција (примери) | Како се користи ИЛИ логички оператор у ВБА?

Или је логичка функција у било ком од програмских језика и слично у ВБА имамо функцију ОР, јер је то логичка функција резултат који даје ова функција је или тачан или нетачан, ова функција се користи за два или више услова заједно и даје нас истинит резултат када се било који од услова врати тачно.

Шта је ИЛИ функција у ВБА?

У екцел логичким функцијама је срж формула које свакодневно користимо. Логичке функције су ту да спроведу логички тест и дају резултат у логичком типу података, тј. ТРУЕ или ФАЛСЕ. Неке од логичких формула у екцелу су „ИФ, ИФЕРРОР у екцелу, ИСЕРРОР у екцелу, И, или ОР екцел функција“. Надам се да сте их често користили као функцију радног листа. И у ВБА можемо да их користимо, а у овом чланку ћемо вам објаснити начине употребе функције „ВБА ИЛИ“.

Шта вам прво падне на памет кад помислите на реч „ИЛИ“?

Једноставно речено „ИЛИ“ значи „Или ово или оно“

Са истом идејом ИЛИ је логичка функција која даје резултат ТРУЕ ако је неки од логичких тестова ТРУЕ и даје ФАЛСЕ као резултат ако ниједан логички тест ТРУЕ.

Ово ради тачно супротно функцији ВБА АНД. Функција АНД враћа ТРУЕ само ако су сви логички услови ТРУЕ, ако ниједан од услова није задовољен, добићемо ФАЛСЕ као резултат.

Формула ВБА ИЛИ функције

Дозволите ми да уоквирим синтаксу да бисте разумели функцију.

[Логички тест] ИЛИ [Логички тест] ИЛИ [Логички тест]

Прво, морамо споменути шта је логички тест, затим споменути реч ИЛИ затим поменути шта је други логички тест. Ако желите да спроведете логичнији тест, наведите реч ИЛИ након што пређете на логички тест.

Изузев свих логичких тестова које радите, ако је неко од тестова задовољан или тачан, резултат ћемо добити ТРУЕ ако није или је задовољан, резултат је ФАЛСЕ.

Примери употребе функције ИЛИ у ВБА

Показаћемо вам једноставан пример употребе функције ОР у ВБА.

Овај ВБА ИЛИ Екцел образац можете преузети овде - ВБА ИЛИ Екцел образац

Да бисте разумели логичку функцију ВБА ИЛИ даћу вам пример. Рецимо да желимо да спроведемо логички тест да ли је број 25 већи од 20 или је број 50 мањи од 30.

Корак 1: Направите име макронаредбе.

Корак 2: Дефинишите променљиву као низ.

Шифра:

 Суб ОР_Екампле1 () Дим и Ас Стринг Енд Суб 

Корак 3: Сада ћемо за ову променљиву доделити вредност кроз ИЛИ логички тест.

Шифра:

 Суб ОР_Екампле1 () Дим и Ас Стринг и = Енд Суб 

Корак 4: Наш први логички тест је 25 >20.

Шифра:

 Суб ОР_Екампле1 () Дим и Ас Стринг и = 25> 20 Крај Суб 

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

Шифра:

 Суб ОР_Екампле1 () Дим и Ас Стринг и = 25> 20 или 50 <30 Крај Суб 

Корак 6: Ок, сада функција ВБА ИЛИ тестира да ли су логички тестови ИСТИНИТИ или ФАЛСЕ. Сада доделите резултат променљиве ВБА-у оквир за поруке.

Шифра:

 Суб ОР_Екампле1 () Дим и Ас Стринг и = 25> 20 или 50 <30 МсгБок и Енд Суб 

Корак 7: Покрените макро и шта је резултат.

Резултат смо добили као ТРУЕ, јер смо од два логичка теста пружили један тест ТРУЕ, тако да је резултат ТРУЕ.

25 је веће од 20, а 50 није мање од 30, у овом случају је први логички тест ИСТИНА, а други ФАЛСЕ. Будући да смо применили функцију ВБА ИЛИ, потребан јој је било који од услова да би био ИСТИНА да би резултат добио ТАЧНО.

Сада погледајте доњи код.

Шифра:

 Суб ОР_Екампле1 () Дим и Ас Стринг и = 25 = 20 или 50 = 30 МсгБок и Енд Суб 

Морам да променим логичке тест једнаџбе из> и <у знак једнакости (=). Ово ће вратити ФАЛСЕ као резултат, јер 25 није једнако 20, а 50 није једнако 30.

ВБА ИЛИ функција са ИФ стањем је моћна

Као што сам рекао ИЛИ може као резултат вратити било ТРУЕ или ФАЛСЕ, али помоћу друге логичке функције „ИФ“, можемо манипулисати резултатима према нашим потребама.

Положите исте логичке тестове одозго, ИЛИ је вратило само ТРУЕ или ФАЛСЕ, али комбинујмо ово ОР са ИФ.

Корак 1: Пре спровођења било ког теста отворите функцију АКО.

Шифра:

 Суб ОР_Екампле2 () Дим и Ас Стринг ИФ Енд Суб 

Корак 2: Сада извршите тестове користећи ИЛИ функцију.

Шифра:

 Суб ОР_Екампле2 () Дим и Ас Стринг ИФ 25 = 20 или 50 = 30 Енд Суб 

Корак 3: Ставите реч „Тада“ и напишите резултат ако је услов ТАЧНО, променљивој доделите вредност као „Услов је задовољен“.

Шифра:

 Суб ОР_Екампле2 () Дим и Ас Стринг Ако је 25 = 20 или 50 = 30 Тада је и = "Услов је задовољен" Крај Суб 

Корак 4: Ако је услов ФАЛСЕ, онда нам треба другачији резултат, зато ставите реч „ОСТАЛО“ а у следећем реду доделите вредност променљивој „какав би требао бити резултат ако је услов или логички тест ФАЛСЕ“.

Шифра:

 Суб ОР_Екампле2 () Дим и Ас Стринг Ако је 25 = 20 или 50 = 30 Тада је и = "Услов је задовољен" Иначе и = "Услов није задовољен" Крај Суб 

Корак 5: Завршите функцију ИФ речју „Заврши ако“.

Шифра:

 Суб ОР_Екампле2 () Дим и Ас Стринг Ако је 25 = 20 или 50 = 30 Тада је и = "Услов је задовољен" Иначе и = "Услов није задовољен" Крај ако је крај Суб 

Корак 6: Доделите вредност променљиве резултат на оквир за поруке.

Шифра:

 Суб ОР_Екампле2 () Дим и Ас Стринг Ако је 25 = 20 или 50 = 30 Тада је и = "Услов је задовољен" Иначе и = "Услов није задовољен" Крај Ако је МсгБок и Крај Суб 

Покрените макро, ако је логички тест ИСТИНА, добићемо резултат као „Услов је задовољен“ или ћемо добити „Услов није задовољен“.

Резултат смо добили као „Услов није задовољен“ јер су оба логичка теста ЛАЖНА.

Сада ћу променити логичке тестове.

Шифра:

 Суб ОР_Екампле2 () Дим и Ас Стринг Ако је 25> 20 или 50 <30 Тада је и = "Услов је задовољен" Иначе и = "Услов није задовољен" Крај ако је МсгБок и Енд Суб 

Покренућу макро и видећу какав је резултат.

Овако, можемо користити једну логичку функцију са осталим логичким функцијама да бисмо дошли до резултата.

Решите доњу студију случаја да бисте се навикли на логичке функције.

Студија случаја за решавање

Имам имена запослених и њихова одељења.

Ако сте покушали и нисте пронашли резултат, можете се позвати на доњи код да бисте разумели логику.

Шифра:

 Суб Бонус_Цалцулатион () Дим и Колико дуго и = 2 до 10 ако ћелије (и, 2) .Валуе = "Финансије" или ћелије (и, 2) .Валуе = "ИТ" Затим ћелије (и, 3) .Валуе = 5000 осталих ћелија (и, 3). Вредност = 1000 Крај ако је следећи и Крај Суб 

Ако је запосленик из „Финансије“ или „ИТ“, онда би требао добити бонус као „5000“. За остале запослене у одељењу, бонус је „1000“.

Спроведите логички тест и дођите до резултата.