Excel|Typename的用法返回值|返回值,Typename
Option Compare Text
Sub test1()
1 Worksheets('Sheet1').Activate '激活工作表时
Debug.Print '您选择的是:' & TypeName(Selection) '显示range
2 Sheets('Chart1').Activate '图表
Debug.Print '您选择的是:' & TypeName(Selection) '显示CHartArea
3 Sheets('宏1').Activate '宏表,不常用
Debug.Print '您选择的是:' & TypeName(Selection) '显示range
4 Sheets('对话框1').Activate 'MS Excel5.0对话框,不常用
Debug.Print '您选择的是:' & TypeName(Selection) '显示nothing
5 Worksheets('有密码').Activate '激活工作表
Debug.Print '您选择的是:' & TypeName(Selection) '显示Range
6 Sheet1.Activate '激活工作表
Sheet1.Range('a1').Select '选择单元格A1
Debug.Print '您选择的是:' & TypeName(Selection) '显示range
End Sub
Sub test2()
Dim StrVar As String, IntVar As Integer, CurVar As Currency
Dim ArrayVar(1 To 5) As String '如为其它类型则显示为不同的类型
Debug.Print TypeName(StrVar) ' 返回 'String'。
Debug.Print TypeName(IntVar) ' 返回 'Integer'。
Debug.Print TypeName(CurVar) ' 返回 'Currency'。
Debug.Print TypeName(ArrayVar) ' 返回 'String()'。
End Sub
Sub test3()
On Error Resume Next
arr = [a1:b3] '赋值
Debug.Print TypeName(arr) '显示为变量数组
Set arr = [a1:b3] '定义范围
Debug.Print TypeName(arr) '显示为RANGE
dat = Now 'dat为变量,赋值后显示类型
Debug.Print '您选择的是:' & TypeName(dat) '日期型
Dim nulvar '定义变量
Debug.Print '您选择的是:' & TypeName(nulvar) '显示为Empty
nulvar = Null '变量=NULL
Debug.Print '您选择的是:' & TypeName(nulvar) '显示为NULL
Set nulvar = Nothing '清空
Debug.Print '您选择的是:' & TypeName(NullVar) '显示为EMPty
End Sub
Sub test4()
Debug.Print TypeName(Selection) '选中对话框表中的按扭时,运行显示为Button
End Sub
Sub test5()
Dim shp As Object
For Each shp In Sheet1.Shapes '循环每个shape
shp.Select '选择当前SHAPE
Debug.Print TypeName(Selection) '显示所选择的类型
Next
End Sub
Sub test6()
Debug.Print TypeName(Sheet1.Range('f1').Value) '数字
Debug.Print TypeName(Sheet1.Range('f2').Value) '字符型数字
Debug.Print TypeName(Sheet1.Range('f3').Value) '字母
Debug.Print TypeName(Sheet1.Range('f4').Value) '汉字
Debug.Print TypeName(Sheet1.Range('f5').Value) '有迷你图的数字
Debug.Print TypeName(Sheet1.Range('f6').Value) '货币型
Debug.Print TypeName(Sheet1.Range('f7').Value) '日期型
Debug.Print TypeName(Sheet1.Range('f8').Value) '字符型
Debug.Print TypeName(Sheet1.Range('f9').Value) '特殊的数字中文小写
End Sub
来源: http://www.92to.com/bangong/2017/09-16/28553104.html