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

VBA Excel. Оператор Option Base

    Оператор Option Base в VBA Excel. Применение оператора Option Base для управления нумерацией массивов. Начальный индекс массива по умолчанию.

    Управление нумерацией массивов

    Если вы пишете код на VBA, то, возможно, сталкивались с тем, что массивы по умолчанию начинают нумерацию с 0. Однако, что делать, если удобнее работать с массивами, нумерация которых начинается с 1? Ответ прост — используйте оператор Option Base!

    Этот оператор должен быть вставлен в самом начале модуля, перед всеми процедурами.

    Что делает Option Base?

    Этот оператор позволяет установить начальный индекс по умолчанию для всех массивов, объявленных в модуле. Вы можете выбрать:

    • Option Base 0 — массивы начинаются с 0 (установлено по умолчанию).
    • Option Base 1 — массивы начинаются с 1.

    Оператор Option Base влияет на нижнюю границу массивов только в том модуле, в котором он находится.

    Если вы не используете Option Base, массивы по умолчанию начинают нумерацию с 0, поэтому нет смысла использовать Option Base 0.

    Примечания

    • Если вы явно задаёте диапазон индексов при объявлении массива (Dim myArray(1 To 5)), Option Base не влияет на объявленную размерность.
    • Используйте Option Base 1, если привычнее работать с индексами, начинающимися с 1.
    • Для большей ясности кода рекомендуется явно задавать диапазон индексов (Dim myArray(1 To 5)) вместо зависимости от Option Base.

    Пример с Option Base 1

    В этом примере оператор Option Base используется для переопределения значения базового индекса массива, равного 0. Функция LBound возвращает наименьший доступный индекс для указанного измерения массива. Оператор Option Base используется только на уровне модуля.


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