VBA, JEŚLI NIE

JEŚLI NIE w VBA

Funkcje logiczne są przydatne do obliczeń, które wymagają wielu warunków lub kryteriów do przetestowania. We wcześniejszych artykułach widzieliśmy warunki „VBA IF”, „VBA OR” i „VBA AND”. W tym artykule omówimy funkcję „VBA JEŚLI NIE”. Przed wprowadzeniem funkcji VBA JEŚLI NIE, pozwólcie, że najpierw pokażę wam, jak działa VBA NIE.

Co NIE jest funkcją w VBA?

„NIE” jest jedną z funkcji logicznych, które mamy w programie Excel i VBA. Wszystkie funkcje logiczne wymagają przeprowadzenia testów logicznych i zwracają TRUE, jeśli test logiczny jest poprawny, a jeśli test logiczny nie jest poprawny, jako wynik zwróci FALSE.

Ale „VBA NOT” jest całkowitym przeciwieństwem innych funkcji logicznych. Powiedziałbym, że jest to funkcja odwrotna funkcji logicznych.

Funkcja „VBA NOT” zwraca „FALSE”, jeśli test logiczny jest poprawny, a jeśli test logiczny nie jest prawidłowy, zwróci „TRUE”. Spójrzmy teraz na składnię funkcji „VBA NOT”.

NOT (test logiczny)

To bardzo proste, musimy wykonać test logiczny. Funkcja NOT ocenia test i zwraca wynik.

Przykłady funkcji NIE i JEŻELI w VBA?

Poniżej znajdują się przykłady użycia funkcji JEŻELI i NIE w programie Excel VBA.

Możesz pobrać ten szablon VBA, JEŚLI NIE Excel tutaj - VBA, JEŚLI NIE szablon Excel

Przykład 1

Spójrz na poniższy kod jako przykład.

Kod:

 Sub NOT_Example () Dim k As String k = Not (100 = 100) MsgBox k End Sub 

W powyższym kodzie zadeklarowałem zmienną jako String.

 Dim k As String 

Następnie dla tej zmiennej przypisałem funkcję NIE z testem logicznym jako 100 = 100.

k = Nie (100 = 100)

Następnie napisałem kod, aby wyświetlić wynik w oknie komunikatu VBA. MsgBox k

Teraz wykonam kod i zobaczę wynik.

Otrzymaliśmy wynik jako „FALSE”.

Teraz spójrz na test logiczny. Podaliśmy test logiczny jako 100 = 100, co generalnie jest PRAWDA, ponieważ daliśmy funkcję NIE, otrzymaliśmy wynik jako FAŁSZ. Jak powiedziałem, na początku daje odwrotne wyniki w porównaniu z innymi funkcjami logicznymi. Ponieważ 100 jest równe 100, wynik zwrócił jako FAŁSZ.

Przykład nr 2

Spójrzmy teraz na jeszcze jeden przykład z różnymi liczbami.

Kod:

 Sub NOT_Example () Dim k As String k = Not (85 = 148) MsgBox k End Sub 

Kod jest ten sam, jedyną rzeczą, którą tutaj zmieniłem, jest zmiana testu logicznego z 100 = 100 na 85 = 148.

Teraz uruchomię kod i zobaczę, jaki jest wynik.

Tym razem otrzymaliśmy wynik jako PRAWDA. Teraz przeanalizuj test logiczny.

k = Nie (85 = 148)

Wszyscy wiemy, że 85 nie jest równe liczbie 148. Ponieważ nie jest równe, funkcja NOT zwróciła wynik jako PRAWDA.

NIE z warunkiem IF:

W programie Excel lub VBA żadne warunki logiczne nie są kompletne bez warunku kombinacji IF. Używając IF w warunku Excela, możemy zrobić znacznie więcej rzeczy poza domyślną PRAWDA lub FAŁSZ. Na przykład w powyższych przykładach otrzymaliśmy domyślne wyniki FALSE & TRUE, zamiast tego możemy zmodyfikować wynik własnymi słowami.

Spójrz na poniższy kod.

Kod:

 Sub NOT_Example2 () Dim Number1 As String Dim Number2 As String Number1 = 100 Number2 = 100 If Not (Number1 = Number2) Then MsgBox "Number 1 nie jest równe Number 2" Else MsgBox "Number 1 jest równe Number 2" End If Napis końcowy 

Zadeklarowałem dwie zmienne.

 Dim Number1 As String & Dim Number2 As String 

Dla tych dwóch zmiennych przypisałem liczby odpowiednio 100 i 100.

Liczba1 = 100 i Liczba2 = 100

Następnie dla funkcji NIE dołączyłem warunku JEŻELI, aby zmienić domyślny PRAWDA lub FAŁSZ. Jeśli wynik funkcji NIE jest PRAWDA, wtedy mój wynik będzie następujący.

MsgBox „Numer 1 nie jest równy numerowi 2”

Jeśli wynik funkcji NIE ma wartości FALSE, to mój wynik jest następujący.

MsgBox „Numer 1 jest równy Numer 2”

Teraz uruchomię kod i zobaczę, co się stanie.

Otrzymaliśmy wynik jako „Liczba 1 równa się Numer 2”, więc funkcja NIE zwróciła wyniku FALSE do warunku JEŻELI, więc warunek JEŻELI zwrócił ten wynik.

W ten sposób możemy użyć warunku JEŻELI, aby wykonać test odwrotny.