编辑组合框时访问表单不会更新,必须移动到下一条记录

Posted

技术标签:

【中文标题】编辑组合框时访问表单不会更新,必须移动到下一条记录【英文标题】:access form won't update while combobox is being edited, must move to next record 【发布时间】:2014-08-06 15:13:59 【问题描述】:

我有一个带有组合框列表的连续表格,图片在这里:

如您所见,访问表单左侧有一个小铅笔,用于显示表单中的当前记录正在被编辑。我需要将其更改为三角形,以便其他表单使用按钮正确更新。是否有VBA“失去焦点”或将铅笔改为黑色三角形?我试图移动到下一个记录,但由于某种奇怪的原因它崩溃了。此外,它相当复杂,因为如果用户在最后一条记录上,我必须添加逻辑,因为它会抛出错误,因为它无法转到最后一条记录上的下一条记录。我的 vba 低于(目前由于某种原因导致访问崩溃)

with recordset
if .recordcount=1 then
docmd.gotorecord record:=acfirst

elseif .absoluteposition = .recordcount - 1 then
docmd.gotorecord record:=acprevious
docmd.gotorecord record:=acnext
else
docmd.gotorecord record:=acnext
docmd.gotorecord record:=acprevious
end if
end with
end sub

【问题讨论】:

【参考方案1】:

通常的方法是保存:

 If Me.Dirty Then
     Me.Dirty = False
 End If

选择合适的活动。

如果 Access 崩溃,通常意味着您需要备份、压缩和修复以及反编译。

【讨论】:

如果您的用户被允许在组合中键入内容,则更改后可能不是一个好主意。输入的每个字母都会发生变化。 确认这一切正常,非常感谢。具体来说,它在 after update 事件下工作,而不是在 change 事件下工作(因为就像你提到的那样,它在每个输入字母后激活)

以上是关于编辑组合框时访问表单不会更新,必须移动到下一条记录的主要内容,如果未能解决你的问题,请参考以下文章

使用 oledbdatareader C# 移动到下一条记录

访问子表单,选择下一条记录时停止自动保存到链接表

代码不会转到下一张表,只更改活动表

PL/SQL 使用 EXEC_SQL Oracle 表单 6i 获取下一条和上一条记录

如何锁定访问子表单中的记录

Extjs 3.4 ComboBox:首次加载组合框时如何预选一条记录?