我有一堆下拉菜单框的访问形式。如果我从列表中选择一个值,然后更改我的想法并再次空白,请单击"关闭",我总是会收到此消息:
the data has been changed
Another User edited this record and saved the changes
before you attempted to save your changes
Re-edit the record.
我在
的背景中有3个不同的宏交易类型
贷款例外评论
更新标志
我认为这些宏不会影响任何错误。但是,我可以写一些东西,以便它捕获此错误消息并忽略它,然后在我单击关闭时继续关闭?
主表单VBA具有此代码:
Private Sub Close_Click()
Me.FrmJobDetails.Form.Requery
Me.subform1.Form.Requery
If Me.FrmJobDetails.Form.Dirty = True Then 'what I tried adding
me.FrmJobDetails.Form.Dirty = False 'what I tried adding
End If
If Me.subform1.Form.Dirty = True Then 'what I tried adding
me.subform1.Form.Dirty = False 'what I tried adding
End If
DoCmd.SetWarnings (WarningsOff)
DoCmd.Save
entry
DoCmd.OpenQuery ("aqrySBORequestSiteDetail"), , acReadOnly
DoCmd.Close
DoCmd.SetWarnings (WarningsOn)
End Sub
在该代码中,我认为"我尝试添加的内容"是我认为可以防止该错误消息发生的。
有什么建议吗?
我用它来处理写冲突错误(7787(。当有写冲突时,第一个更改会通过,第二个更改将被丢弃。
Private Sub Form_Error(DataErr As Integer, Response As Integer)
If DataErr = 7787 Then
Response = acDataErrContinue
On Error Resume Next
With Me.Recordset
.MovePrevious
.MoveNext
End With
On Error GoTo 0
End If
End Sub
好...跳过它:
On Error Resume Next
在宏的顶部会跳过任何错误的命令。
这不会解决原因,但会停止弹出错误。
谢谢!我发现这在我的尽头工作。相同的脚本,但dataerr 7878。
Private Sub Form_Error(DataErr As Integer, Response As Integer)
If DataErr = 7878 Then
Response = acDataErrContinue
On Error Resume Next
With Me.Recordset
.MovePrevious
.MoveNext
End With
On Error GoTo 0
End If
End Sub