如题所述
dim a
if isobject(a) then
msgbox "a is object var"
else
msgbox "not"
end if
vartype(exp)可以判断变量是什么类型包括是数组之类的
还有一个typename(exp)得到的是类型文本
比如
dim a as string
msgbox typename(a)
返回的是 String 注意这个结果是区分大小写的,如果你觉得怕出错可以转换为全大写或全小写
ucase(exp) 全大写
lcase(exp) 全小写
如果有什么不明白的,可以找我
号码
2,5,4,1,8,6,9,1,7
if isobject(a) then
msgbox "a is object var"
else
msgbox "not"
end if
vartype(exp)可以判断变量是什么类型包括是数组之类的
还有一个typename(exp)得到的是类型文本
比如
dim a as string
msgbox typename(a)
返回的是 String 注意这个结果是区分大小写的,如果你觉得怕出错可以转换为全大写或全小写
ucase(exp) 全大写
lcase(exp) 全小写
如果有什么不明白的,可以找我
号码
2,5,4,1,8,6,9,1,7
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-08-26
楼上的兄弟方法很对,再系统说一下,以以下代码为例:
Dim a As Object, b As Long
Set a = Text1
Print isobject(a),输出值为true
Print isobject(b),输出值为false
Print TypeName(a),输出值为textbox
Print TypeName(b),输出值为long
在Set a = Text1之前执行Print TypeName(a),输出值为Nothing
以下列出TypeName返回值:
Byte 位值,字节类型
Integer 整数
Long 长整数
Single 单精度浮点数
Double 双精度浮点数
Currency 货币
Decimal 十进制值
Date 日期
String 字符串
布尔 布尔值
Error 错误值
Empty 未初始化
Null 无效数据
Object 对象
Unknown 类型未知的对象
Nothing 不再引用对象的对象变量
如果是对象类型并且已引用,直接返回该对象的类名。
Dim a As Object, b As Long
Set a = Text1
Print isobject(a),输出值为true
Print isobject(b),输出值为false
Print TypeName(a),输出值为textbox
Print TypeName(b),输出值为long
在Set a = Text1之前执行Print TypeName(a),输出值为Nothing
以下列出TypeName返回值:
Byte 位值,字节类型
Integer 整数
Long 长整数
Single 单精度浮点数
Double 双精度浮点数
Currency 货币
Decimal 十进制值
Date 日期
String 字符串
布尔 布尔值
Error 错误值
Empty 未初始化
Null 无效数据
Object 对象
Unknown 类型未知的对象
Nothing 不再引用对象的对象变量
如果是对象类型并且已引用,直接返回该对象的类名。