如果对象有默认属性,VarType函数的结果是对象的默认属性值的类型。
文本框的默认属性是Text属性,返回值是字符串,所以VarType(text1(0))和VarType(text1(0).text)得出的类型都是8。数组没有默认属性,所以Vartype(text1)得出的类型是9。
用 For Each ctlCurrent In Me 枚举窗体所有控件,会枚举每一个元素,ctlCurrent不会等于text1数组。区分数组和控件,可以用
VarType(Me.Controls(ctlCurrent.Name))
或者
TypeName(Me.Controls(ctlCurrent.Name))
TypeName函数判断对象类型时不取默认属性,可以区分各种控件。