相关文章推荐
博学的板凳  ·  Java设置POI XSSFCell ...·  3 周前    · 
热心的楼梯  ·  java ...·  3 周前    · 
愉快的沙滩裤  ·  悲情三角_百度百科·  1 年前    · 
如何在某列单元格中判断号码是否为11位的手机号码?如何来判断该列单元格中数字是否含有其他字符或文字。并对非11位的号码进行标注。目前我的标注方法是Cells(i,col)... 如何在某列单元格中判断号码是否为11位的手机号码?
如何来判断该列单元格中数字是否含有其他字符或文字。
并对非11位的号码进行标注。
目前我的标注方法是
Cells(i, col).Interior.Color = 255
把单元格底色进行标红。
希望诸位大侠给点帮助。
小弟接触VBA没多久,求救。
If Len(Cells(i, col)) = 11 Then
If CLng(Cells(i, col)) = 0 Then
If Left((Cells(i, col)), 2) = 13 Or Left((Cells(i, col)), 2) = 15 Or Left((Cells(i, col)), 2) = 18 Then
Else
Cells(i, col).Interior.Color = 255
End If
Else
Cells(i, col).Interior.Color = 255
End If
Else
Cells(i, col).Interior.Color = 255
End If

这个是我写的代码,为什么无法运行,原因在哪?

If Left((Cells(i, col)), 2) = 13 Or Left((Cells(i, col)), 2) = 15 Or Left((Cells(i, col)), 2) = 18 Then
Else
Cells(i, col).Interior.Color = 255
End If
都OK了。就是上面这个代码不执行,谁能告诉我 - -

监控了Left((Cells(i, col)), 2),提示溢出

我运行 If CLng(Cells(i, col)) = 0 Then的时候,显示溢出
把 Clng改成了Csng后可以运行 If CLng(Cells(i, col)) = 0 Then 语句

在Left((Cells(i, col)), 2),应该怎么改? IsNumeric 函数
返回 Boolean 值,指出表达式的运算结果是否为数。

语法

IsNumeric(expression)

必要的 expression 参数是一个 Variant,包含数值表达式或字符串表达式。

说明

如果整个 expression 的运算结果为数字,则 IsNumeric 返回 True;否则返回 False。

如果 expression 是日期表达式,则 IsNumeric 返回 False。

If Len(Cells(i, col)) <> 11 And IsNumeric(Cells(i, col)) = False And _
Left((Cells(i, col)), 2) = 13 Or Left((Cells(i, col)), 2) = 15 Or _
Left((Cells(i, col)), 2) = 18 Then
Cells(i, col).Interior.Color = 255
End If

如果提示溢出,变量I声明的数据类型不合.
用下面类型试试
Dim i As Long