Перейти к содержимому
Наше приложение «Дешевые авиабилеты» в AppGallery >>

VBA Excel. Цикл While… Wend

    Цикл While… Wend в VBA Excel, его синтаксис и описание отдельных компонентов. Примеры использования цикла While… Wend и его отличия от цикла Do While… Loop.

    Цикл While… Wend в VBA Excel предназначен для повторения блока операторов до тех пор, пока выполняется заданное условие (возвращается значение True). По своему функционалу его можно считать ограниченной версией цикла Do While… Loop, который позволяет проверять условие как до, так и после выполнения операторов, и принудительно завершать цикл с помощью оператора Exit Do. У цикла While… Wend таких возможностей нет: условие может быть задано только перед блоком операторов, а принудительный выход из цикла не предусмотрен.

    Синтаксис цикла While… Wend

    Компоненты цикла While… Wend

    Компонент Описание
    condition Обязательный атрибут. Условие выполнения цикла. Выражение, возвращающее значение типа Boolean.
    statements Необязательный* атрибут. Операторы вашего кода.

    *Если не использовать в цикле свой код VBA, смысл применения цикла теряется.

    Примеры циклов While… Wend

    Простейший цикл

    Информационное сообщение MsgBox выведет число 105.

    Проход по строкам листа

    Допустим, на листе Excel есть таблица, расположенная в левом верхнем углу, начиная с ячейки A1, и под ней — пустая строка. Таблица содержит следующие данные:

    Товар Кол-во Цена Сумма
    Батон 1 33
    Лимон 2 30
    Молоко 3 55
    Хлеб 1 30
    Чипсы 5 18

    Исходя из этих данных, необходимо, используя цикл While… Wend для прохода по строкам листа Excel, рассчитать сумму по каждому наименованию товара и записать ее в четвертую графу, а также в первую пустую строку записать слово «Итого:» (в третью графу) и итоговую сумму (в четвертую графу).

    Вы можете скопировать таблицу на свой лист книги Excel, пример кода в стандартный модуль VBA и наглядно проверить работу цикла While… Wend.


    Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.