Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 10316|回复: 9

[已解决]TypeName 函数和VarType 函数的区别

[复制链接]
发表于 2012-8-4 12:35 | 显示全部楼层 |阅读模式

比较.rar (8.25 KB, 下载次数: 8)
发表于 2012-8-4 12:53 | 显示全部楼层    本楼为最佳答案   
本帖最后由 吕?布 于 2012-8-4 12:54 编辑

应该是TypeName能够识别Range对象(这与帮助不完全符合)
而VarType只能识别普通数据类型,所以VarType(x)实际上隐式地进行了数据类型转换
Sub test()
    Dim x
    For Each x In [a1:a2].Value
        Debug.Print TypeName(x), VarType(x)
    Next
End Sub
回复

使用道具 举报

 楼主| 发表于 2012-8-4 13:20 | 显示全部楼层
吕?布 发表于 2012-8-4 12:53
应该是TypeName能够识别Range对象(这与帮助不完全符合)
而VarType只能识别普通数据类型,所以VarType(x)实 ...

TypeName 函数
请参阅     示例     特性
返回一个 String,提供有关变量的信息
语法
TypeName(varname)
必要的 varname 参数是一个 Variant,它包含用户定义类型变量之外的任何变量。


VarType 函数
请参阅     示例     特性
返回一个 Integer,指出变量的子类型
语法
VarType(varname)
必要的 varname 参数是一个 Variant,包含用户定义类型变量之外的任何变量。
------------------------------------------------------------------------------------------------------------------------- 以上是帮助

谢谢吕布!
比较后只找到一点点区别。如果这就是区别,那就太难为人了。
学习了,如果不省略(这里指.value),尽量明确的表达,能减少看不到的原因。
哦,普通数据类型中的普通,是指那些呀?
回复

使用道具 举报

发表于 2012-8-6 09:34 | 显示全部楼层
普通类型我想当然的,是指普通的布尔,数值,字串类型,对象类型没有具体化。
我又看了一下帮助,这次感觉帮助与实际是符合的了
TypeName帮助中说:

TypeName 所返回的字符串可以是下面列举的任何一个字符串:
返回字符串   变量
对象类型      类型为 objecttype 的对象

这里的返回的"对象类型",我怀疑英文帮助是objecttype,与变量里的objecttype相对应,也就是说返回对象的具体类型。同时,对"对象类型"有具本的解释:
对象类型
应用程序通过自动化显露的对象的类型,例如,Application、File、Range,和 Sheet。使用对象浏览器或引用应用程序的文档可得到这些对象的列表。

所以,例子里出现的情况是因为隐式类型转换的原因

回复

使用道具 举报

 楼主| 发表于 2012-8-6 09:53 | 显示全部楼层
吕?布 发表于 2012-8-6 09:34
普通类型我想当然的,是指普通的布尔,数值,字串类型,对象类型没有具体化。
我又看了一下帮助,这次感觉 ...

判断数据类型,我还是尽量用vartype,至少本例更不易出错。我想不出什么怎么说好。

我搜了下objecttype,有4条帮助。
objecttype 必需的;Variant (String)。待创建对象的类型或类。
Variant (String),这个怎么解释成什么好啊?
回复

使用道具 举报

发表于 2012-8-6 13:01 | 显示全部楼层
Variant (String)是指字符串型变体类型吧
回复

使用道具 举报

 楼主| 发表于 2012-8-6 15:37 | 显示全部楼层
dim x
x="abc"

就像这个x,和你说的Variant (String),是一个意思么?
{:041:}
回复

使用道具 举报

发表于 2012-8-6 15:44 | 显示全部楼层
我想就是这样的情况
回复

使用道具 举报

 楼主| 发表于 2012-8-6 15:48 | 显示全部楼层
吕?布 发表于 2012-8-6 15:44
我想就是这样的情况

好吧,希望自己下次能分清
回复

使用道具 举报

发表于 2013-7-31 01:19 | 显示全部楼层
学习了,去试试。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-6 05:19 , Processed in 0.712699 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表