Могу ли я заставить VBA по-разному относиться к аргументу Variant, когда Empty vs Zero? - PullRequest
1 голос
/ 17 марта 2019

Учитывая, что вариант, который является пустым = 0, я смотрю, есть ли у кого-нибудь хитрость, чтобы различать два, как в фиктивной функции ниже

Function doGetFmt(v As Variant) As String
    dim s as String
    If IsEmpty(v) Then s ="Empty"
    If v=0 s= "zero"
    doGetFmt = s
End Function

1 Ответ

0 голосов
/ 18 марта 2019

Исходя из комментария GSerg:

Dim v As Variant

Debug.Print IsEmpty(v) '>> #true#
Debug.Print v = 0      '>> true

v = 0

Debug.Print IsEmpty(v) '>> #false#
Debug.Print v = 0      '>> true

Если вы проверяете только ноль, если IsEmpty() возвращает false, то вы ближе к тому, что хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...