ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > Typename的用法返回值

Typename的用法返回值

作者:绿色风 分类: 时间:2022-08-18 浏览:101
楼主
wqfzqgk

  1. Option Compare Text
  2. Sub test1()
  3. 1   Worksheets("Sheet1").Activate '激活工作表时
  4.     Debug.Print "您选择的是:" & TypeName(Selection) '显示range
  5. 2   Sheets("Chart1").Activate '图表
  6.     Debug.Print "您选择的是:" & TypeName(Selection) '显示CHartArea
  7. 3   Sheets("宏1").Activate '宏表,不常用
  8.     Debug.Print "您选择的是:" & TypeName(Selection) '显示range
  9. 4   Sheets("对话框1").Activate 'MS Excel5.0对话框,不常用
  10.     Debug.Print "您选择的是:" & TypeName(Selection) '显示nothing
  11. 5   Worksheets("有密码").Activate '激活工作表
  12.     Debug.Print "您选择的是:" & TypeName(Selection) '显示Range
  13. 6   Sheet1.Activate '激活工作表
  14.     Sheet1.Range("a1").Select '选择单元格A1
  15.     Debug.Print "您选择的是:" & TypeName(Selection) '显示range
  16. End Sub
  17. Sub test2()
  18. Dim StrVar As String, IntVar As Integer, CurVar As Currency
  19. Dim ArrayVar(1 To 5) As String '如为其它类型则显示为不同的类型
  20. Debug.Print TypeName(StrVar)    ' 返回 "String"。
  21. Debug.Print TypeName(IntVar)    ' 返回 "Integer"。
  22. Debug.Print TypeName(CurVar)    ' 返回 "Currency"。
  23. Debug.Print TypeName(ArrayVar)    ' 返回 "String()"。
  24. End Sub
  25. Sub test3()
  26. On Error Resume Next
  27. arr = [a1:b3] '赋值
  28. Debug.Print TypeName(arr) '显示为变量数组
  29. Set arr = [a1:b3] '定义范围
  30. Debug.Print TypeName(arr) '显示为RANGE
  31. dat = Now 'dat为变量,赋值后显示类型
  32.     Debug.Print "您选择的是:" & TypeName(dat) '日期型
  33.   Dim nulvar '定义变量
  34.     Debug.Print "您选择的是:" & TypeName(nulvar) '显示为Empty
  35.     nulvar = Null '变量=NULL
  36.     Debug.Print "您选择的是:" & TypeName(nulvar) '显示为NULL
  37.   Set nulvar = Nothing '清空
  38.     Debug.Print "您选择的是:" & TypeName(NullVar) '显示为EMPty
  39. End Sub
  40. Sub test4()
  41. Debug.Print TypeName(Selection) '选中对话框表中的按扭时,运行显示为Button
  42. End Sub
  43. Sub test5()
  44. Dim shp As Object
  45. For Each shp In Sheet1.Shapes '循环每个shape
  46. shp.Select '选择当前SHAPE
  47. Debug.Print TypeName(Selection) '显示所选择的类型
  48. Next
  49. End Sub
  50. Sub test6()
  51. Debug.Print TypeName(Sheet1.Range("f1").Value) '数字
  52. Debug.Print TypeName(Sheet1.Range("f2").Value) '字符型数字
  53. Debug.Print TypeName(Sheet1.Range("f3").Value) '字母
  54. Debug.Print TypeName(Sheet1.Range("f4").Value) '汉字
  55. Debug.Print TypeName(Sheet1.Range("f5").Value) '有迷你图的数字
  56. Debug.Print TypeName(Sheet1.Range("f6").Value) '货币型
  57. Debug.Print TypeName(Sheet1.Range("f7").Value) '日期型
  58. Debug.Print TypeName(Sheet1.Range("f8").Value) '字符型
  59. Debug.Print TypeName(Sheet1.Range("f9").Value) '特殊的数字中文小写
  60. End Sub

Typename.rar

扩展:可以根据返回值的属性来批量去操作,如工作表中插入的图像及控件,根据返回picture或Button来改变这一类的其他属性。要注意的事:option compare text,以前我犯过不少这样的错误,如没加时,必须要注意字母的大小写。
2楼
xyf2210
收藏了

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap