如何解决MS Access 2013 表单显示“记录被锁定以供其他用户编辑”以及由谁
当用户尝试编辑其他用户当前正在编辑的 MS Access 2013 数据库表单中的记录时,是否可以构建一个可以弹出显示的表单:
- “此记录已被其他用户锁定,无法编辑”
- 用户名,例如。 “约翰·史密斯”
表单属性表中的记录锁定设置为已编辑记录,以防止第二个用户编辑同一记录。但是,如果第二个用户知道该记录已被锁定以进行编辑以及当前正在编辑该记录的用户的姓名,那将是有益的。
我可以构建弹出表单,但是我需要 vba 代码来检测用户是否在记录中,并且需要 vba 代码在弹出表单上显示用户的姓名。
谢谢,
阿尔
解决方法
您可以尝试捕获特定错误,以便您可以控制/自定义向用户显示的消息。下面的代码将捕获错误 3218 并向用户显示带有自定义消息的消息框。您需要将现有的 VBA 命令包装在此错误处理程序中以捕获错误。如果您使用的绑定表单会在用户导航到锁定记录时引发错误,您可以制作一个宏来识别错误并运行这段代码。
On Error GoTo err1:
'*CODE THAT MIGHT THROW ERROR GOES HERE*
err1:
Select Case Err.Number
Case 3218
If MsgBox("Cannot edit - record is locked by another user.",vbCritical + vbOKOnly,"System Error") = vbOK Then: Exit Sub
Case Else
Exit Sub
End Select
Microsoft 有一个 long list of trappable errors - 因此您可能希望找到特定于您的问题的问题,并使用每个错误编号更新 CASE 语句。
识别锁定记录的特定用户需要更多的工作,并且需要大量的自定义代码。 This site 有可能满足您需求的解决方案。
,版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。