Access 2007-2016表单列表框点击后字段不更新及报错问题
Access表单列表框导航问题修复方案
问题根源
你把原本用于导航查找的未绑定列表框,错误绑定到了pub_id字段,导致它的功能从「定位记录」变成了「修改当前记录的pub_id值」——既触发了无效的更新操作(所以弹出Update or CancelUpdate without AddNew or Edit错误),又破坏了表单的导航同步逻辑,造成其他字段无法跟随更新。
修复步骤
- 取消列表框的控件绑定
打开表单设计视图,选中列表框,在右侧属性表的「数据」选项卡中,清空「控件源」的内容,让列表框回到未绑定状态。 - 重新配置导航功能
右键列表框,选择「更改列表框」,重新运行向导:选择「根据列表框中选择的值查找表单上的记录」,确认键列是pub_id、显示列是pub_name,完成后不要修改控件源。 - 手动添加导航代码(如果向导失效)
若向导生成的逻辑仍有问题,可给列表框的「更新后」事件添加VBA代码(替换ListBoxName为你的列表框实际名称):Private Sub ListBoxName_AfterUpdate() Dim rs As Recordset Set rs = Me.RecordsetClone rs.FindFirst "pub_id = '" & Me.ListBoxName.Value & "'" If Not rs.EOF Then Me.Bookmark = rs.Bookmark Set rs = Nothing End Sub
内容的提问来源于stack exchange,提问作者nemean
相关产品推荐
相关产品推荐

