vba - 在连续表单上获取控件或记录集值
问题描述
我有一个连续表单,每个记录都有一个按钮,并且希望在单击按钮时将记录的 ID 传递给另一个表单。我知道如何传递价值。我的问题是,无论单击哪个按钮,我都会使用 Forms![Form name]!Text19.Value 获取第一条记录的 ID。
即使在下图中选择了不同的记录,但我得到了第一条记录的 ID。
Id 值在记录集中,如果有帮助,也在隐藏字段中。
解决方案
您可以使用记录集来检索相应的数据:
Dim r As DAO.Recordset
Set r = Forms![Form name].RecordsetClone 'Clone the recordset
r.Bookmark = Forms![Form name].Bookmark 'Navigate to the active record
MyValue = r!SomeField.Value
请注意,如果表单处于非活动状态,则Bookmark
可能不会引用您认为已选中的记录。为避免这种情况,请缓存书签(将其保存在Form_Current
)
推荐阅读
- javascript - 在 HTML ul 中显示 Json 数组
- angular - Angular App 未编译
- javascript - 即使状态为 200,JS 文件也不会在网络选项卡上显示内容
- java - Java <-> Angular Dto
- javascript - 使用 node.js 从 Spring Boot 2 响应中读取传入的 HTTPS 标头
- javascript - 如何在 PHP laravel 或 Java Script 中比较 3 个不同的数组
- javascript - 在 Javascript 中为几乎相同的输入获取不同的 typeof
- c++ - 如何在 C++ 中为 copy_if 等定义“一元谓词”?
- scala - 错误:未知参数“idea-shell”
- c# - 如何使用 serialPort DatatReceived 事件更改 tabControl 中的活动选项卡?