Логически оператор И | Логически оператор Или | Логически оператор Не
Трите най -използвани логически оператори в Excel VBA са: И, или и не. Както винаги, ще използваме лесни примери, за да направим нещата по -ясни.
Логически оператор И
Поставете команден бутон на работния си лист и добавете следните кодови редове:
Dim score1 As Integer, score2 As Integer, резултат As String
score1 = Диапазон ("A1"). Стойност
score2 = Диапазон ("B1"). Стойност
Ако score1> = 60 и score2> 1 Тогава
result = "pass"
Иначе
резултат = "неуспех"
Край Ако
Обхват ("C1"). Стойност = резултат
Обяснение: ако score1 е по -голям или равен на 60 и score2 е по -голям от 1, Excel VBA връща пропуск, иначе Excel VBA връща неуспешно.
Резултат, когато щракнете върху командния бутон на листа:
Заключение: Връщането на Excel VBA е неуспешно, защото резултат 2 не е по -голям от 1.
Логически оператор Or
Поставете команден бутон на работния си лист и добавете следните кодови редове:
Dim score1 As Integer, score2 As Integer, резултат As String
score1 = Диапазон ("A1"). Стойност
score2 = Диапазон ("B1"). Стойност
Ако score1> = 60 Или score2> 1 Тогава
result = "pass"
Иначе
резултат = "неуспех"
Край Ако
Обхват ("C1"). Стойност = резултат
Обяснение: ако score1 е по -голям или равен на 60 или score2 е по -голям от 1, Excel VBA връща пропуск, иначе Excel VBA връща неуспешно.
Резултат, когато щракнете върху командния бутон на листа:
Заключение: Excel VBA връща пропуск, защото резултат 1 е по -голям или равен на 60.
Логически оператор Не
Поставете команден бутон на работния си лист и добавете следните кодови редове:
Dim score1 As Integer, score2 As Integer, резултат As String
score1 = Диапазон ("A1"). Стойност
score2 = Диапазон ("B1"). Стойност
Ако score1> = 60 And Not score2 = 1 Тогава
result = "pass"
Иначе
резултат = "неуспех"
Край Ако
Обхват ("C1"). Стойност = резултат
Обяснение: ако score1 е по -голям или равен на 60 и score2 не е равен на 1, Excel VBA връща пропуск, иначе Excel VBA връща неуспешно.
Резултат, когато щракнете върху командния бутон на листа:
Заключение: Excel VBA връща неуспешно, тъй като score2 е равен на 1.