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