|
楼主 |
发表于 2009-5-25 10:17
|
显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
第9部分 函数的使用
技巧160 判断是否为数值
使用IsNumeric函数可以判断表达式的运算结果是否为数值,如下面的代码所示。- #001 Sub Numeric()
- #002 Dim i As Integer
- #003 Dim n As String
- #004 Dim s As String
- #005 With Sheet1
- #006 For i = 1 To .Range("A65536").End(xlUp).Row
- #007 If IsNumeric(.Cells(i, 1)) Then
- #008 n = n & .Cells(i, 1).Address(0, 0) & Chr(9) & .Cells(i, 1) & Chr(13)
- #009 Else
- #010 s = s & .Cells(i, 1).Address(0, 0) & Chr(9) & .Cells(i, 1) & Chr(13)
- #011 End If
- #012 Next
- #013 End With
- #014 MsgBox "A列中数值单元格:" & Chr(13) & n & Chr(13) _
- #015 & "A列中非数值单元格:" & Chr(13) & s
- #016 End Sub
复制代码 代码解析:
Numeric过程使用IsNumeric函数判断工作表的A列单元格是否为数值,并使用消息框显示。
第7行代码判断工作表的A列单元格是否为数值。IsNumeric函数返回Boolean值,指出表达式的运算结果是否为数,语法如下:
IsNumeric(expression)
参数expression是必需的,Variant类型,包含数值表达式或字符串表达式。
如果参数expression的运算结果为数字,则IsNumeric返回True,否则返回False。
第8行代码将数值单元格的地址和数值保存在变量 e中。
第10行代码将非数值单元格的地址和内容保存在变量 s中。在保存时插入制表符对数据列进行分隔,使之排列整齐,请参阅技巧73-5。
运行Numeric过程结果如图所示。
|
|