АКО НЕ е във VBA
Логическите функции са полезни за изчисленията, които изискват множество условия или критерии за тестване. В нашите по-ранни статии видяхме условията „VBA IF“, „VBA OR“ и „VBA AND“. В тази статия ще обсъдим функцията „VBA IF NOT“. Преди да въведем функцията VBA IF NOT, нека първо ви покажа за функцията VBA NOT.
Какво НЕ е функция във VBA?
“NOT” е една от логическите функции, които имаме с excel & VBA. Всички логически функции изискват провеждане на логически тестове и връщане на TRUE, ако логическият тест е правилен, ако логическият тест не е правилен, тогава той ще върне FALSE като резултат.
Но „VBA NOT“ е напълно противоположна на другата логическа функция. Бих казал, че това е обратната функция на логическите функции.
Функцията „VBA NOT“ връща „FALSE“, ако логическият тест е правилен и ако логическият тест не е правилен, той ще върне „TRUE“. Сега вижте синтаксиса на функцията „VBA NOT“.
НЕ (Логически тест)Това е много просто, трябва да предоставим логически тест. Функцията NOT оценява теста и връща резултата.
Примери за функцията NOT & IF във VBA?
По-долу са примерите за използване на функцията IF и NOT в Excel VBA.
Можете да изтеглите този шаблон на VBA, ако не е Excel, тук - VBA, ако не е шаблон на Excel
Пример # 1
За пример разгледайте кода по-долу.
Код:
Sub NOT_Example () Dim k As String k = Not (100 = 100) MsgBox k End Sub
В горния код съм декларирал променливата като String.
Dim k As String
Тогава за тази променлива съм задал функцията NOT с логическия тест като 100 = 100.
k = не (100 = 100)
След това написах кода, за да покажа резултата в полето за съобщения на VBA. MsgBox k
Сега ще изпълня кода и ще видя резултата.
Получихме резултата като „FALSE“.
Сега погледнете назад към логическия тест. Предоставихме логическия тест като 100 = 100, което обикновено е ИСТИНА, тъй като бяхме дали функцията NOT, получихме резултата като FALSE Както казах, в началото той дава обратни резултати в сравнение с други логически функции. Тъй като 100 е равно на 100, той е върнал резултата като FALSE.
Пример # 2
Сега вижте още един пример с различни номера.
Код:
Sub NOT_Example () Dim k As String k = Not (85 = 148) MsgBox k End Sub
Кодът е същото, единственото нещо, което промених тук, е, че смених логическия тест от 100 = 100 на 85 = 148.
Сега ще пусна кода и ще видя какъв е резултатът.
Този път получихме резултата като TRUE. Сега разгледайте логическия тест.
k = не (85 = 148)
Всички знаем, че 85 не е равно на числото 148. Тъй като не е равно, функцията NOT е върнала резултата като TRUE.
НЕ с IF условие:
В Excel или VBA всички логически условия не са пълни без условието IF комбинация. Използвайки IF в условие на Excel, можем да направим много повече неща извън подразбиращите се TRUE или FALSE. Например в горните примери получихме резултати по подразбиране FALSE & TRUE, вместо това можем да модифицираме резултата със собствените си думи.
Погледнете кода по-долу.
Код:
Sub NOT_Example2 () Dim Number1 As String Dim Number2 As String Number1 = 100 Number2 = 100 Ако не (Number1 = Number2) Тогава MsgBox "Number 1 не е равен на Number 2" Else MsgBox "Number 1 е равен на Number 2" End If Крайна под
Декларирах две променливи.
Затъмнете Number1 като низ и Dim Number2 като низ
За тези две променливи съм задал числата съответно 100 и 100.
Number1 = 100 & Number2 = 100
Тогава за функция НЕ, аз съм прикачил условие IF, за да променя по подразбиране TRUE или FALSE. Ако резултатът от функцията NOT е TRUE, тогава резултатът ми ще бъде както следва.
MsgBox „Номер 1 не е равно на номер 2“
Ако резултатът от функцията NOT е FALSE, резултатът ми е както следва.
MsgBox „Номер 1 е равен на номер 2“
Сега ще пусна кода и ще видя какво ще стане.
Получихме резултата като „Номер 1 е равен на номер 2“, така че функцията NOT е върнала резултата FALSE в условие IF, така че условието IF връща този резултат.
По този начин можем да използваме условие IF, за да направим обратния тест.