我是个新手,在给公司作项目,遇到一个问题
代码如下
Private Sub Command1_Click()
Dim a As Booleana = IsNumeric("10E4")MsgBox a
End Sub实际上那IsNumeric函数里的数是个科学记数法,所以他返回的是True,
但他又有字母E,所以我想让他返回false,又不想用循环,
望各位高人给予帮助,最好是代码,能解决者给100分
代码如下
Private Sub Command1_Click()
Dim a As Booleana = IsNumeric("10E4")MsgBox a
End Sub实际上那IsNumeric函数里的数是个科学记数法,所以他返回的是True,
但他又有字母E,所以我想让他返回false,又不想用循环,
望各位高人给予帮助,最好是代码,能解决者给100分
Dim a As Booleana = IsNumeric(Replace("10E4", "E", "A"))MsgBox a
End Sub
a = IsNumeric(str) And Instr(Ucase(str),"E")
a = IsNumeric(str) And Instr(Ucase(str),"E")=""
dim a as boolean
Dim f As Doubleon error resume next
f = CDbl("10E4")
a = (0=Err.Number)
on error goto 0MsgBox a
End Sub
如果有除了e之外的别的字母出现咋办那?
如果转换失败表示不是数字IsNumeric只是用来判断某个字符串是否全由数字组成
------------------------------------
出现这种情况无非就是两个字母E(e)和D(d),可以这样来处理:Dim str As String
str = "10E4"
If InStr(UCase(str), "D") <> "" Or InStr(UCase(str), "E") <> "" Then
a = False
Else
a = IsNumeric(str)
End If