Funkcja VBA AND

Excel VBA AND funkcja

AND jest zarówno funkcją logiczną, jak i operatorem logicznym, co oznacza, że ​​jeśli wszystkie warunki podane w tej funkcji zostaną spełnione, wtedy tylko my otrzymamy prawdziwy wynik, podczas gdy jeśli którykolwiek z warunków nie powiedzie się, wyjście jest zwracane jako fałszywe, otrzymujemy wbudowane polecenie AND w VBA do użycia.

Mam nadzieję, że przeczytałeś nasz artykuł o „VBA OR” i „VBA IF OR”. Ta funkcja jest przeciwieństwem funkcji LUB. W funkcji LUB potrzebowaliśmy, aby którykolwiek z podanych warunków logicznych był spełniony, aby otrzymać wynik jako PRAWDA. Ale w funkcji AND jest odwrotnie. Aby otrzymać wynik PRAWDA, wszystkie testy logiczne dostarczone w programie Excel muszą być spełnione.

Ok, spójrz na składnię funkcji AND w programie Excel.

[Test logiczny] AND [Test logiczny] AND [Test logiczny]

Powyżej mam dwa wyniki testów na 600.

W kolumnie wyników muszę otrzymać wynik jako PRAWDA, jeśli wynik obu testów jest większy niż równy 250.

Spójrz na poniższy obrazek.

Kiedy zastosujemy funkcję logiczną ORAZ otrzymamy wyniki. W komórce C4 i C5 otrzymaliśmy wynik PRAWDA, ponieważ wyniki testów 1 i 2 są większe lub równe 250.

Spójrz na komórkę C6, mamy FAŁSZ, mimo że wynik testu 2 jest równy 250. To dlatego, że w teście 1 wynik wynosi tylko 179.

Przykłady użycia języka VBA i funkcji

Możesz pobrać ten szablon VBA I Excel tutaj - szablon VBA I Excel

Przykład 1

Na przykład przetestujemy tutaj liczby, czy 25> = 20 i 30 <= 31.

Krok 1: Zadeklaruj zmienną jako ciąg.

Kod:

 Sub AND_Example1 () Dim K As String End Sub 

Krok 2: Zmiennej „k” przypiszemy wartość za pomocą funkcji AND.

Kod:

 Sub AND_Example1 () Dim K As String K = End Sub 

Krok 3: Podaj pierwszy warunek jako 25> = 20.

Kod:

 Sub AND_Example1 () Dim K As String K = 25> = 20 End Sub 

Krok 4: Teraz otwórz funkcję AND i podaj drugi test logiczny, tj. 30 <= 29.

Kod:

 Sub AND_Example1 () Dim K As String K = 25> = 20 And 30 <= 29 End Sub 

Krok 5: Teraz pokaż wynik zmiennej „k” w oknie komunikatu w VBA.

Kod:

 Sub AND_Example1 () Dim K As String K = 25> = 20 i 30 <= 29 MsgBox K End Sub 

Uruchom makro, aby zobaczyć wynik.

Otrzymaliśmy wynik jako FAŁSZ, ponieważ z zastosowanych dwóch warunków pierwszy warunek 25> = 20, ten warunek jest spełniony, więc wynik jest PRAWDZIWY, a drugi warunek 30 <= 29 to nie jest spełniony wynik jest FAŁSZ. Aby wynik był PRAWDZIWY, oba warunki powinny być spełnione.

Przykład nr 2

Teraz zmienię test logiczny na „100> 95 AND 100 <200”

Kod:

 Sub AND_Example2 () Dim k As String k = 100> 95 i 100 <200 MsgBox k End Sub 

Uruchom kod, aby zobaczyć wynik.

Tutaj otrzymaliśmy wynik PRAWDA, ponieważ

Pierwszy test logiczny: 100> 95 = PRAWDA

Drugi test logiczny: 100 <200 = PRAWDA

Ponieważ otrzymaliśmy wyniki PRAWDA dla obu testów logicznych, nasz ostateczny wynik to PRAWDA.

Przykład nr 3

Teraz zobaczymy dane z arkusza. Skorzystaj z danych, których użyliśmy, aby pokazać przykład funkcji excel AND.

Tutaj warunek to Wynik testu 1> = 250 ORAZ Wynik testu 2> = 250 .

Ponieważ mamy więcej niż jedną komórkę danych, musimy używać pętli, aby uniknąć pisania niepotrzebnych i czasochłonnych wierszy kodu. Napisałem dla ciebie poniższy kod, formułę i logiczne jest to samo, tylko użyłem „VBA For Next Loop”.

Kod:

 Sub AND_Example3 () Dim k As Integer For k = 2 to 6 Cells (k, 3) .Value = Cells (k, 1)> = 250 And Cells (k, 2)> = 250 Next k End Sub 

To da wynik dokładnie taki sam, jak nasza funkcja arkusza, ale nie otrzymamy żadnych formuł, otrzymamy tylko wyniki.

W ten sposób możemy zastosować funkcję logiczną AND, aby przetestować wiele warunków, z których wszystkie powinny być PRAWDA, aby uzyskać pożądane wyniki.

Działa to zupełnie odwrotnie niż funkcja OR, gdzie OR wymaga, aby którykolwiek z podanych warunków był PRAWDA, aby otrzymać wyniki, ale AND wymaga 100% wyniku w teście logicznym, aby otrzymać wyniki.