代码如下。。附有小例。 此前问过这个问题。有点甜老师帮我解答了,但是有点小问题,msgbox每次都要跳出来,所以想让事件更详细些,就重新改写了代码。但是执行起来,有点小问题。例子里的仓位信息有 J01到J05, 如果同一个编号里已经有一个或者多个仓位信息了,假定当前行的上一行为J02,当前行竟然可以输入J01???不解!!!字符串类型哦。。有点搞不懂。。望高手指点迷津~谢谢~
combobox的事件是 与当前行的编号相同、而且仓位有值的行,然后把 仓位的值 赋值给当前行,如果与当前行编号相同的行都没有值,随便选个值录入即可,如果不做选择则提示“请选择仓位”。
Dim bh As String = Tables("查询_Table1").Current("编号")
Dim cwxx As String = e.Form.controls("cwxxcombobox").text
Dim fdr As DataRow = DataTables("小包发货单").Find( "[编号] = '" & bh & "' And [仓位信息] is not null")
If fdr IsNot Nothing Then
If cwxx <> "" And cwxx <> fdr("仓位信息") Then
msgbox("请放到" & fdr("仓位信息") & "!")
Tables("查询_Table1").Current("仓位信息") = fdr("仓位信息")
Else If cwxx <> "" And cwxx = fdr("仓位信息") Then
Return
Else If cwxx = "" Then
msgbox("请选择仓位!")
e.Form.controls("cwxxcombobox").Select()
End If
End If

此主题相关图片如下:qq截图20140323043024.jpg
[此贴子已经被作者于2014-3-23 12:37:31编辑过]