Комфорт и автоматизация

Option Explicit

Visual Basic язык хоть и простой, но местами коварный для новичков.

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

Чем это чревато?

Неприятности происходят, когда программист ненароком совершает ошибку при наборе имени переменной (что с любым программистом происходит достаточно часто). Компилятор со спокойной совестью регистрирует эту переменную как новую, что, разумеется, ломает всю логику программы. Код вроде бы и работает, но выдаёт совсем не то, что надо.

Выход есть!

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

Option Explicit

Теперь во время компиляции макросов Вам будут выдаваться сообщение об ошибке если вдруг в коде программы встретится необъявленная переменная.

Программисты — народ забывчивый и ленивый, поэтому желательно сделать так, чтобы оператор-надсмотрщик появлялся автоматически. Для этого нужно вызвать окно настроек VBE (Tools >> Options) и поставить галочку для пункта Recuire Variable Declaration. По умолчанию эта опция отключена, нужно это безобразие исправить.

Теперь не придётся в каждом новом модуле вспоминать как пишется слово Explicit, да и вообще помнить что нужно всенепременно указать оператор.