以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]重复值、空值,怎样才能弹出警告窗 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=83066) |
|||||
-- 作者:szsmall -- 发布时间:2016/3/30 17:19:00 -- [求助]重复值、空值,怎样才能弹出警告窗 1、录入计划单号时,如果单号已经存在,弹出警告窗口。是在validating写代码嘛? 2、按“保存”时,有空行或者单元格是空,弹出警告窗口 此主题相关图片如下:计划单录入 空行 提示.jpg |
|||||
-- 作者:大红袍 -- 发布时间:2016/3/30 17:27:00 -- Dim fdr As DataRow = DataTables("表A").Find("计划单号 = \'" & e.Sender.Text & "\'") If fdr IsNot Nothing Then msgbox("单号已存在") e.Cancel = True End If |
|||||
-- 作者:大红袍 -- 发布时间:2016/3/30 17:31:00 -- If e.Form.Controls("TextBox1").Text = Nothing Then msgbox("工程名称没填写") return End If If e.Form.Controls("TextBox2").Text = Nothing Then msgbox("计划编号没填写") return End If
For Each r As Row In Tables("表A").rows |
|||||
-- 作者:szsmall -- 发布时间:2016/4/5 20:06:00 -- 如果“材料名称”、“规格型号”、“单位”、“数量”,这4列不可以为空。其他两列可以试空的,代码该怎么写 |
|||||
-- 作者:大红袍 -- 发布时间:2016/4/5 20:41:00 -- Dim cs() As String = {"材料名称", "规格型号", "单位", "数量"} For Each r As Row In Tables("表A").rows |
|||||
-- 作者:szsmall -- 发布时间:2016/4/7 23:50:00 -- “数量”列,为了防止误输,负数或者零值,在表格的ValidateEdit写以下代码,但出现错误提示框? 另外有没比下面更简洁的代码嘛? If Tables("计划单临时表").Current.IsNull("数量") Then MessageBox.show("数量不能为空") End If If e.Col.Name = "数量" Then If e.text <= 0 Then MessageBox.show("订购数量不能是负数或零值") E.Cancel = True End If End If 此主题相关图片如下:计划单录入 数量少于0 显示警告.jpg [此贴子已经被作者于2016/4/8 19:41:04编辑过]
|
|||||
-- 作者:Hyphen -- 发布时间:2016/4/8 8:23:00 -- If e.Col.Name = "数量" Then If e.Row.Isnull("数量") OrElse e.Row("数量") <= 0 Then MessageBox.show("订购数量不能是负数或零值") E.Cancel = True End If End If
|
|||||
-- 作者:benwong2013 -- 发布时间:2016/4/8 9:02:00 --
|
|||||
-- 作者:大红袍 -- 发布时间:2016/4/8 9:48:00 -- 回复8楼,单号控件的 Validating 事件 |
|||||
-- 作者:szsmall -- 发布时间:2016/4/8 19:31:00 --
按帮助的例子,写成下面那样,放在ValidateEdit,可正常用。 If e.Col.Name = "数量" Then If e.Text > "" Then Dim v As Double = Val(e.text) If v <= 0 Then MessageBox.show("订购数量不能是负数或零值") End If End If End If 放在DataColChanging,又改成下面 If e.DataCol.Name = "数量" Then
If e.NewValue <= 0 Then
MessageBox.show("订购数量不能是负数或零值")
e.Cancel = True
End If
End If 因为要从excel复制内容过来,最后就用了DataColChanging。
[此贴子已经被作者于2016/4/8 23:48:54编辑过]
|