Оператор VBA if — это условный оператор, в котором код запускается на основе условий. Если условие выполнено, мы можем указать в коде, что мы хотим, и еще что мы хотим. Вот почему в VBA его также называют оператором if then else. Это очень похоже на excel if. В VBA, если нам нужно написать коды, а в excel мы указываем условие в самой формуле.

Вложенный, если в VBA | Можете ли вы иметь оператор if внутри оператора if VBA?

Вложенный if в VBA означает использование оператора if внутри оператора if. Это похоже на вложенные операторы if в Excel, где мы используем несколько операторов if в одной формуле, но в VBA мы будем использовать несколько операторов if внутри оператора if.

Синтаксис инструкции VBA if

Подпрограмма if_statement()

Если условие, то коды VBA

В противном случае, если условие, то коды VBA

Другие коды VBA

Завершить, если

Мы должны закрыть оператор if с помощью end if в конце, иначе код выдаст нам ошибку.

Давайте разберемся в этом на практическом примере. Ниже приведены данные, и, допустим, мы хотим раскрасить эти данные синим, зеленым, красным и желтым цветом в зависимости от условия или текста, упомянутого в H2.

В H2 я создал валидацию, в которой перечислены названия цветов.

Теперь вопрос заключается в том, что когда мы меняем имя цвета при проверке, тот же цвет должен применяться к данным при нажатии кнопки для запуска кода.

Код VBA:

Подпрограмма if_statement_in_VBA()

Если Диапазон("h2").Значение = "Синий", Тогда

Range("a1").CurrentRegion.Interior.Color = vbBlue

ИначеЕсли Диапазон("h2").Значение = "Зеленый" Тогда

Range("a1").CurrentRegion.Interior.Color = vbGreen

ИначеЕсли Диапазон("h2").Значение = "Красный" Тогда

Range("a1").CurrentRegion.Interior.Color = vbRed

Другое

Range("a1").CurrentRegion.Interior.Color = vbBlue

Конец, если

Конец подписки

Объяснение: "If Range("h2").Value = "Blue" " это первое условие в кодах. Он проверит, имеет ли ячейка "h2" значение ячейки «Синий», если это так, то данные будут окрашены в синий цвет с использованием кода «

Range("a1").CurrentRegion.Interior.Color = vbBlue». Убедитесь, что вы пишете vb перед названием цвета в коде, иначе VBA не определит, что это цвет, который вы хотите применить. Таким образом, если первое условие выполнено, данные будут окрашены в синий цвет, а если оно не выполнено, оно перейдет к следующему условию, которое указано в else if. Вы можете использовать любое количество else, если это зависит от ваших требований. Поэтому я использовал 1 if и 3 else if здесь, чтобы проверить 3 условия, и в последнем я использовал оператор else, означающий, что если ни одно условие не выполнено, данные будут окрашены в синий цвет, как указано в коде else. Убедитесь, что оператор if закрыт с end if последним.

Теперь мы можем создать кнопку для выполнения кодов. Вы можете использовать любое изображение или фигуру и назначить ему свой макрос.

Теперь измените значение в ячейке h2 на зеленый и нажмите на кнопку. Вывод представлен ниже.

Теперь измените значение ячейки на «красное» и нажмите кнопку.

Вывод:

Итак, как вы можете преуспеть в VBA, если оператор с несколькими условиями.

Надеюсь, мне удалось объяснить вам логику. Спасибо! Счастливого обучения!

Предыдущая главаСледующая глава

Краткие справочники

Как скомпилировать данные из нескольких книг в одну книгу с помощью Excel VBA? — Объяснил

Как скопировать данные из одной книги и вставить в другую с помощью Excel VBA?

Как создавать диаграммы в VBA? — Разъяснено на примерах

Как получить последнюю строку данных? Концепция LR — Изучите Excel VBA

Как обрабатывать ошибки в Excel VBA? Какие существуют методы обработки ошибок в VBA?

Как открыть книгу с локального диска в Excel VBA? Объяснение свойства GetopenfileName

Как выделить ячейки или группу ячеек, используя свойства ячеек в excel с помощью excel VBA?

Как выделить ячейки/группу ячеек или диапазон в excel с помощью Excel VBA? — Learnitix