#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)
. Это выделит все условия, при которых переменные будут использоваться в неинициализированном состоянии (тогда вы сможете их исправить).