Option's builder - инструмент для вставки в модули VBA свойств option's

Основные настройки конструктора Option's Builder

Конструктор Option’s Builder — добавляет или удаляет выбранные свойства в модули кода VBA, активной книги MS Excel

Реализована возможность вставки следующих свойств:

  • Option Explicit — используется на уровне модуля для принудительного явного объявления всех переменных в этом модуле
  • Option Private Module — используется на уровне модуля для запрета ссылок на контент модуля извне проекта.
  • Option Compare Text — используется на уровне модуля для объявления метода сравнения по умолчанию, который будет использоваться при сравнении строковых данных.
  • Option Base 1 — используется на уровне модуля для объявления метода сравнения по умолчанию, который будет использоваться при сравнении строковых данных.

Selected Module — вставлять свойства option’s в активный модуль VBA, All VBAProject — в активный проект VBA.

Главное окно инструмента Option's Builder надстройки Macro Tools VBA
Главное окно инструмента Option's Builder

Option Explicit

Используется на уровне модуля для принудительного явного объявления всех переменных в этом модуле.

Синтаксис
Option Explicit

Примечание

Инструкция Option Explicit при ее использовании должна находиться в модуле до любой процедуры.
При использовании инструкции Option Explicit необходимо явно описать все переменные с помощью инструкций Dim, Private, Public, ReDim или Static. При попытке использовать неописанное имя переменной возникает ошибка во время компиляции. Когда инструкция Option Explicit не используется, все неописанные переменные имеют тип Variant, если используемый по умолчанию тип данных не задается с помощью инструкции DefТип.
Используйте инструкцию Option Explicit, чтобы избежать неверного ввода имени имеющейся переменной или риска конфликтов в программе, когда область определения переменной не совсем ясна.

 

Option Private Module

Используется на уровне модуля для запрета ссылок на контент модуля извне проекта.

Синтаксис
Option Private Module

Примечание

Когда модуль содержит инструкцию Option Private Module, общие элементы, например, переменные, объекты и определяемые пользователем типы, описанные на уровне модуля, остаются доступными внутри проекта, содержащего этот модуль, но недоступными для других приложений или проектов. Microsoft Excel поддерживает загрузку нескольких проектов. В этом случае инструкция Option Private Module позволяет ограничить взаимную видимость проектов.

Option Compare

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

Синтаксис
Option Compare { Binary | Text | Database }

Примечание

Инструкция Option Compare при ее использовании должна находиться в модуле перед любой процедурой. Инструкция Option Compare указывает способ сравнения строк (Binary, Text или Database) для модуля. Если модуль не содержит инструкцию Option Compare, по умолчанию используется способ сравнения Binary. Инструкция Option Compare Binary задает сравнение строк на основе порядка сортировки, определяемого внутренним двоичным представлением символов. В Microsoft Windows порядок сортировки определяется кодовой страницей символов. В следующем примере представлен типичный результат двоичного порядка сортировки:

A < B < E < Z < a < b < e < z < Б < Л < Ш < б < л < ш

Инструкция Option Compare Text задает сравнение строк без учета регистра символов на основе системной национальной настройки. Тем же символам, что и выше, при сортировке с инструкцией Option Compare Text соответствует следующий порядок:

(A=a) < (B=b) < (E=e) < (Z=z) < (Б=б) < (Л=л) < (Ш=ш)

Инструкция Option Compare Database может использоваться только в Microsoft Access. При этом задает сравнение строк на основе порядка сортировки, определяемого национальной настройкой базы данных, в которой производится сравнение строк.

Option Base

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

Синтаксис
Option Base { 0 | 1 }

Поскольку Option Base по умолчанию равна 0, оператор Option Base никогда не используется. Оператор должен находиться в модуле до всех процедур. Оператор Option Base может указываться в модуле только один раз и должен предшествовать объявлениям массивов, включающим размерности.

Примечание

Предложение To в инструкциях Dim, Private, Public, ReDim и Static предоставляет более гибкий способ управления диапазоном индексов массива. Однако если нижняя граница индексов не задается явно в предложении To, можно воспользоваться инструкцией Option Base, чтобы установить используемую по умолчанию нижнюю границу индексов, равную 1. Нижняя граница значений индексов массивов, создаваемых с помощью функции Array, всегда равняется нулю; вне зависимости от инструкции Option Base.

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