Ms access 引用下拉列表的文本框不返回任何内容
我将Ms access 引用下拉列表的文本框不返回任何内容,ms-access,ms-access-2010,Ms Access,Ms Access 2010,我将cmbCountry作为未绑定的下拉列表显示在表单上。下拉列表按预期工作。我在同一表单上设置了一个名为txtCM\u ID的文本框,我想在其中显示下拉列表中选择的ID 当我将文本框的记录源输入为=Forms![frm_客户模型]!cmbCountry.Column(0)access会自动将其更改为读取=[Forms]![frm_客户模型]![CMB国家][列](0) 在VBE即时窗口中测试时,我的版本返回正确的信息。access生成的代码在立即窗口中运行时返回以下内容: 运行时错误450:参
cmbCountry
作为未绑定的下拉列表显示在表单上。下拉列表按预期工作。我在同一表单上设置了一个名为txtCM\u ID
的文本框,我想在其中显示下拉列表中选择的ID
当我将文本框的记录源输入为=Forms![frm_客户模型]!cmbCountry.Column(0)
access会自动将其更改为读取=[Forms]![frm_客户模型]![CMB国家][列](0)
在VBE即时窗口中测试时,我的版本返回正确的信息。access生成的代码在立即窗口中运行时返回以下内容:
运行时错误450:参数数目错误或属性无效
分配
令人沮丧的是,无论我在控制源代码中的何处或如何输入代码,access都会将代码更改为其版本。当表单打开时,txtCM\u ID
只是保持空白
我还尝试通过更改对以下内容的引用来解决此问题:表单(“frm\U ClientModel”)。控件(“cmbCountry”)。列(0)
虽然此版本(在VBE中也已测试并正常)不会产生错误,但在文本框中也不会返回任何内容
我遗漏了什么/做错了什么/忽略了什么?仅使用
=[cmbCountry]
从其他控件访问CMBCorry的值。我无法明确确定发生这种情况的原因,但最终通过使用下拉列表的OnClick事件解决了问题,并通过VBA将所需信息写入文本框,如下所示:
Private Sub cmbCountry_AfterUpdate()
Me.txt_CMID = Forms("frm_ClientModel").Controls("cmbCountry").Column(0)
End Sub
如果其他人找到了表单控件无法正常工作的原因的答案,我很想听听您的意见。
txtCM_ID=me.controls(“cmbCountry”).value
Access将其更改为=[me]。[controls]([cmbCountry”)。[value]您是通过代码还是在表单属性中执行此操作的?如果在形式上做,最好去掉VBA标签,因为我是在形式上做的。我在VBE中进行测试,以验证它是否确实(应该)工作。我删除了VBA标记。我尝试了它,但它没有给我任何结果。保留为空。完全相同的设置在另一个窗体上完全有效。我的表单可能有问题?请仔细检查名称,尝试重命名源代码管理,它应该可以工作。我已经重命名了下拉列表,并尝试了它,但什么都没有。我删除并创建了一个新的文本框。同样的事情。现在,我将制作表单的一个副本,并逐一检查和删除表单中的其他控件。完成上述操作后,我现在将获得结果,但仅在删除主表单查询之后!