【发布时间】:2016-12-22 15:13:01
【问题描述】:
我在 MS 访问中有一个表单,其中包含一个显示表中记录的子表单。我有一个文本框,其内容基于从子集中选择的记录。如果我选择 id 为 2 的记录,则文本框的值设置为 2。
每次更改值时,我都想将文本框的值复制到表单的另一个文本框。
绑定到子表单的文本框上的 onChange 事件处理程序不会触发,当我在子表单中选择记录时,任何其他事件也不会触发。
我要么编写一些 vba 代码来复制文本,要么使用 makro。
【问题讨论】:
我在 MS 访问中有一个表单,其中包含一个显示表中记录的子表单。我有一个文本框,其内容基于从子集中选择的记录。如果我选择 id 为 2 的记录,则文本框的值设置为 2。
每次更改值时,我都想将文本框的值复制到表单的另一个文本框。
绑定到子表单的文本框上的 onChange 事件处理程序不会触发,当我在子表单中选择记录时,任何其他事件也不会触发。
我要么编写一些 vba 代码来复制文本,要么使用 makro。
【问题讨论】:
如果您手动更改字段,它可能会触发,例如,此代码适用于我:
Private Sub Text0_Change()
Text2.Value = Text0.Text
End Sub
(请注意value 和text,因为您在编辑时在该字段中看到的内容与该字段的值不同)
但如果你通过 VBA 更新它就不会
使用宏或 Visual Basic 设置控件的值不会触发控件的此事件。您必须将数据直接键入到控件中,或设置控件的 Text 属性。 https://msdn.microsoft.com/en-us/library/office/ff821734.aspx
如果字段的名称与我的示例中一样,我将拥有更新 Text0 的任何 VB 也更新 Text2
【讨论】: