Access 2013:在文本框中显示查询结果
Posted
技术标签:
【中文标题】Access 2013:在文本框中显示查询结果【英文标题】:Access 2013: showing query result in a Text box 【发布时间】:2014-05-09 08:08:07 【问题描述】:我在 Access 2013 中有一个带有组合框 CountryCode 和 CityCode 的子表单。
我正在向子表单添加另一个字段,一个文本框,用于显示与输入的国家代码和城市代码相对应的城市名称。
表 Location 包含以下列: CountryCode |城市代码 |城市名称
SQL 查询应该是:
SELECT CityName FROM Location WHERE CountryCode='USA' AND CityCode='NY'
用户在组合框中选择了“USA”和“NY”,生成的 CityName 应该放在 CityName 文本框中
到目前为止我已经完成了:
在子窗体的 CityName 文本框 Control Source 中,我输入了:
=[GetCityName()]
然后在一个 vba 模块中我已经完成了:
Public Function GetCityName()
x = DLookup("[CityName]", "dbo_Location", "[CountryCode] = " & CountryCode & " And [CityCode] = " & CityCode & "")
End Function
当我运行它时,这会弹出输入宏名称对话框。
好的,可能是我没有从组合框中获取代码,所以我将 x 更改为:
x = DLookup("[CityName]", "dbo_Location", "[CountryCode] = " & Me.CountryCode & " And [CityCode] = " & Me.CityCode & "")
现在我收到错误消息:“Me 这个词的用法无效”
我注意到该子表单未在 vba 中的 Microsoft Access 类对象下列出。这会是个问题吗?
不知道还能做什么,正如您所见,我对 access 和 vba 还是很陌生。请帮忙!
【问题讨论】:
只要参考combo的栏目即可。我不知道你为什么要让自己的生活变得如此复杂。 对不起,我没有解释自己。请再读一遍。我已经编辑了问题 在文本框中,例如=MyCombo.Column(2)
不过是子表单,使用合适的记录集。
谢谢 Remou,但正如我所说,我对 Access 和 vba 还是很陌生,我不明白你说什么:(
你没有得到什么?你想发生什么?
【参考方案1】:
试试这个:
x = DLookup("[CityName]", "dbo_Location", "[CountryCode] = '" & Me.CountryCode.Value & "' And [CityCode] = '" & Me.CityCode.Value & "'")
【讨论】:
以上是关于Access 2013:在文本框中显示查询结果的主要内容,如果未能解决你的问题,请参考以下文章
MS Access 2013 - 根据文本框中的值过滤列表框中的值