引用下拉列表的文本框不返回任何内容

时间:2019-02-19 10:20:44

标签: ms-access ms-access-2010

我在表单上有cmbCountry作为未绑定下拉列表。下拉菜单按预期工作。我在同一表格上设置了一个名为txtCM_ID的文本框,我想在其中显示下拉菜单中选择的ID。

当我输入文本框的记录源为=Forms![frm_ClientModel]!cmbCountry.Column(0)时,访问权限会自动将其更改为=[Forms]![frm_ClientModel]![cmbCountry].[column](0)

当我在“ VBE立即”窗口中对其进行测试时,我的版本将返回正确的信息。在即时窗口中运行时,访问产生的代码将返回以下内容:

  

运行时错误450:参数数量错误或属性无效   作业

令人沮丧的是,无论我在哪里或如何在控制源中输入代码,访问都会将其更改为它的版本。打开表单后,txtCM_ID只是空白。

我还尝试通过更改对以下内容的引用来解决此问题:Forms("frm_ClientModel").Controls("cmbCountry").column(0)

尽管此版本(在VBE中也经过测试并且可以正常运行)不会产生错误,但在文本框中也不会返回任何内容。

我错过了什么/做错了什么/被忽视了?

2 个答案:

答案 0 :(得分:1)

仅使用

StackOverflowError

要从其他控件访问cmbCountry的值。

答案 1 :(得分:0)

我无法具体确定发生这种情况的原因,但最终通过使用下拉菜单的OnClick事件并通过以下方式通过VBA将所需信息写入文本框来解决了这个问题:

Private Sub cmbCountry_AfterUpdate()
    Me.txt_CMID = Forms("frm_ClientModel").Controls("cmbCountry").Column(0)
End Sub

如果其他人找到了为什么表单控件无法正常工作的答案,我将很高兴收到您的来信。