如何检查变量是否声明为Variant类型

时间:2018-01-13 15:08:25

标签: vba

有没有办法检查变量最初是否被声明为Variant数据类型?

考虑以下示例:

Public Sub mainMethod()
    Dim a As Variant
    Dim b As String

    a = "a"
    b = "b"

    Debug.Print "a: " & VBA.TypeName(a) & " | " & VBA.VarType(a)
    Debug.Print "b: " & VBA.TypeName(b) & " | " & VBA.VarType(b)

End Sub

输出是:

a: String | 8
b: String | 8

将文本分配给声明为Variant的变量后,检查变量类型(VarTypeTypeName)的VBA内置函数都将其视为{{的变量1}}类型。

结果是变量Stringa被上面提到的那些函数以相同的方式处理,尽管最初它们是用不同的数据类型声明的。

我知道如何通过使用b函数解析方法体来检查它,但在这种情况下是不可接受的。

0 个答案:

没有答案