具体代码 if val(text.text)>100 then exit sub text.text = " " list1.row = list1.row - 1 list.text = text.text end if 要说明的是每输入一个数据,list.row + 1,我想让不符合的数据不录入数据库,而且list保持原来的状态
Private Sub Command1_Click() If Not IsNumeric(Text1.Text) Then MsgBox "请输入数值", vbCritical Text1.SetFocus SendKeys "{Home}+{End}" Exit Sub End If If Val(Text1.Text) > 100 Then MsgBox "输入数值过大,请填写100以下的", vbCritical Text1.SetFocus SendKeys "{Home}+{End}" Exit Sub End If
具体代码 if val(text.text)>100 then exit sub text.text = " " list1.row = list1.row - 1 list.text = text.text end if 要说明的是每输入一个数据,list.row + 1,我想让不符合的数据不录入数据库,而且list保持原来的状态看了你的代碼﹐一般我們從前台對數據進行攔截﹐因為數據庫中間是不會對前台非法數據進行攔截的。我剛用MSFlexGrid1測試以下數據。 其實就是這么判斷 dim a as Integer a=val(text1.text) if a>1000 then Msgbox"error" Text1.text="" Text1.SetFocus exit sub end if因為你在數據輸入﹐馬上判斷錯誤的時候﹐就清空text中間數據﹐而且exitsub就根本不會執行到下面的list中呀? 我不知道你的意思 是不是這樣﹐我只能這么寫最簡單的了。
if val(text.text)>100 then
exit sub
text.text = " "
list1.row = list1.row - 1
list.text = text.text
end if
要说明的是每输入一个数据,list.row + 1,我想让不符合的数据不录入数据库,而且list保持原来的状态
If Not IsNumeric(Text1.Text) Then
MsgBox "请输入数值", vbCritical
Text1.SetFocus
SendKeys "{Home}+{End}"
Exit Sub
End If
If Val(Text1.Text) > 100 Then
MsgBox "输入数值过大,请填写100以下的", vbCritical
Text1.SetFocus
SendKeys "{Home}+{End}"
Exit Sub
End If
List1.AddItem Text1.Text
Text1.Text = ""
'--------数据库操作-------------
.....End Sub
text.text = " "
list1.row = list1.row - 1
list.text = text.text
不都没有被执行了吗dsclub的方法很好啊,有错误的话最好给出个信息,不然发生了什么错误都不知道。
if val(text.text)>100 then
exit sub
text.text = " "
list1.row = list1.row - 1
list.text = text.text
end if
要说明的是每输入一个数据,list.row + 1,我想让不符合的数据不录入数据库,而且list保持原来的状态看了你的代碼﹐一般我們從前台對數據進行攔截﹐因為數據庫中間是不會對前台非法數據進行攔截的。我剛用MSFlexGrid1測試以下數據。
其實就是這么判斷
dim a as Integer
a=val(text1.text)
if a>1000 then
Msgbox"error"
Text1.text=""
Text1.SetFocus
exit sub
end if因為你在數據輸入﹐馬上判斷錯誤的時候﹐就清空text中間數據﹐而且exitsub就根本不會執行到下面的list中呀?
我不知道你的意思 是不是這樣﹐我只能這么寫最簡單的了。