我的毕设项目中,要从界面中读取数据,存入ACCESS库中,在存入之前要判断数据的合法性,那么所读入的数据就不能直接存入数据库了,要先存在变量中,先判断数据合法性,然后存入数据库。我的问题是,如何判断一个变量中所存数据的合法性,比如一个数字型的变量,是不允许存入字符的,如果出现字符了怎么判断出来?!
请各位高手指教!

解决方案 »

  1.   

    if not isnumeric(text1.text) then
       msgbox "error"
    end if
      

  2.   

    使用数据类型转换函数,如Val()/cdate()/clng(),请查帮助
      

  3.   

    不好意思错了
    if not IsNumber(text1.text) then
       msgbox "error"
    end if
      

  4.   

    假设界面上有一个txtLong的文本框,用来输入整数;
    在txtLong的KeyPress事件中写:
    Private Sub txtLong_KeyPress(KeyAscii As Integer)
       Select Case KeyAscii
          Case 48 To 57
          Case Else
            KeyAscii = 0
       end select
    End Sub然后用CLng(Val(txtLong.Text))就可以取得整数,即有效数据
      

  5.   

    If Not IsNumeric(Text2.Text) Then
          MsgBox "4%$"
       End If
    这个试过了
      

  6.   

    验证数据的合法性要自己写验证的相关代码
    例如:
    If Not IsNumeric(Text2.Text) Then
        MsgBox "不是數字"
    End If
      

  7.   

    其实有个方法,就是让用户只能输入数值型的数据,下面就是只能输入整数和小数Private Sub txt_A1_063_KeyPress(KeyAscii As Integer)
        Dim intCount As Integer    
        '只能输入0--9和小数点
        If KeyAscii <> vbKeyReturn And _
           Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9")) And _
           KeyAscii <> 46 Then        
            KeyAscii = 0
            Exit Sub
        End If
        '只能有一个小数点
        If KeyAscii = 46 Then
            intCount = InStr(CStr(txt_A1_063.Text), ".")    
            If intCount > 0 Then
                KeyAscii = 0
                Exit Sub
            End If
        End If
    End Sub
      

  8.   

    '数值型判断:isnumeric(text1.text)
    '日期型判断:isdate(text1.text)
      

  9.   

    同意Leftie(Leftie) ( )结合一下相信你会做的更好!