你的val("2.25%")出不出错?为什么?怎么解决?

解决方案 »

  1.   

    这样看行不行
    aa="12.5%"
    val(iif(isnumeric(aa),aa,0))
      

  2.   

    当然会出错了,val的参数必须是一个以字符串形式出现的只包含正负号、数字、小数点和e的合法数值。
      

  3.   

    百分号表示整形数
    & 表示长整形。
    在msdn中输入 & , 就可以看到详细解答了。不知道你的原意是什么?可以把百分号切掉再算
    Private Sub Command4_Click()
    Dim s As String
    s = "2.25%"
    MsgBox Val(Left(s, Len(s) - 1))
    End Sub