我有一大段代码,除非出现用户错误,否则一切正常。 用户必须在其中放入值的文本框,然后单击按钮以更新表。
如果用户将该框留空并单击该按钮,则弹出一个msg框,要求他们填写一个值,如果该框包含一个值,则运行一系列命令和SQL。
不幸的是,当该框保留为空白时,会弹出msg框,但无论如何命令和SQL都会运行。
我想我可能只是遗漏了一些非常明显的东西,但我无法理解它。这是导致我出现问题的代码块......
If IsNull(Me.TxtStockValue) Then MsgBox "Please Select An Item To Update Stock And Ensure A Value Has Been Entered" Else:
DoCmd.RunSQL SQLDelete1
DoCmd.SetWarnings False
DoCmd.RunSQL SQLStory
DoCmd.RunSQL SQLDelete2
DoCmd.RunSQL SQLUpdate
DoCmd.SetWarnings True
txtStockValue是txt框,不能为空。其他似乎没有按照我想要的方式运作。
由于
萨姆
答案 0 :(得分:6)
试试这个 - 在你的版本中只有第一个语句(SQLDelete1)是else的一部分,其余的总是被执行。
If IsNull(Me.TxtStockValue) Then
MsgBox "Please Select An Item To Update Stock And Ensure A Value Has Been Entered"
Else
DoCmd.RunSQL SQLDelete1
DoCmd.SetWarnings False
DoCmd.RunSQL SQLStory
DoCmd.RunSQL SQLDelete2
DoCmd.RunSQL SQLUpdate
DoCmd.SetWarnings True
End If