Автоматический разрыв, если переменная пуста

#vba

#vba

Вопрос:

Я отлаживаю какой-то старый код, Visual Basic 5.0, и у меня есть строка «если x <> y, то» … и окно Locals показывает, что x является вариантом / пустым. (все переменные имеют тип Variant)

Это означает, что x используется без предварительной инициализации, что я рассматриваю как ошибку. Есть ли способ заставить Visual Basic обрабатывать пустые переменные как ошибку?

Я знаю о isEmpty(), но это не автоматическая проверка всех переменных.

Комментарии:

1. Может ли Option Explicit помочь?

2.Есть переменные, которые нельзя использовать, если вы не инициализируете сначала как массивы, но есть и другие переменные, которые могут быть… Ваш единственный способ — проверить, пуста переменная или нет. If Range Is Nothing If Str = vbNullString ….

3. Похоже, вам также потребуется инициализировать эти переменные. Вы могли бы попробовать использовать Debug.Assert Not IsEmpty(x) . Это выделит все условия, при которых переменные будут использоваться в неинициализированном состоянии (тогда вы сможете их исправить).