在 VBA 中获取 SQL 字符串中的 Access 表单字段值

Posted

技术标签:

【中文标题】在 VBA 中获取 SQL 字符串中的 Access 表单字段值【英文标题】:Getting Access form field values in SQL string in the VBA 【发布时间】:2014-11-26 23:53:45 【问题描述】:

我可能会问一些愚蠢的问题,因为我是 ms 访问和 VBA 的新手,并且一直坚持这一点,

我的 Access VBA 中有一个 SQL 字符串,如下例所示

select customer_id from customer_table where customer_name in ('Max','Jack')

我希望用户使用 ms 访问未绑定文本框 名称作为 txtCusName 在查询中添加/替换 customer_name。我尝试如下修改 SQL 字符串,但出现编译错误,请告诉我我在哪里做错了?

select customer_id from customer_table where customer_name in ( & Me.txtCusName & )

同样,这只是示例,我对我的项目有更大的查询,如果我对值进行硬编码,但想知道如何从访问表单中获取信息,这将起作用。

【问题讨论】:

或许读过基础教程? 我完全同意,感谢您的建议,如果您能分享解决方案,那就太好了。 网上有很多教程资源。 如果是单个值,我本可以使用这个 customer_name = " & "'" & Me.txtCusName & "'",但我想知道如何在SQL“IN”函数,这就是我迷路的地方。 期望用户正确格式化所需的字符串只是自找麻烦,对用户不友好。如果您使用可用值填充列表框并从所选项目构建您需要的内容,您(和您的用户)会更好。 【参考方案1】:

我编写了如下代码,以允许用户在表单字段中输入“Max”、“Jack”来获取查询过滤器并正常工作。

select customer_id from customer_table where customer_name in ( " & "" & Me.txtCusName & ")"

【讨论】:

以上是关于在 VBA 中获取 SQL 字符串中的 Access 表单字段值的主要内容,如果未能解决你的问题,请参考以下文章

如何在 VBA 中获取 Select SQL 语句的结果

连接 VBA SQL 语句中的字段时出现错误 424

使用 Access 2007 查询向导创建 SQL,仍然无法在 VBA 中运行

编辑器中的 ms-access VBA 长 sql 查询字符串行拆分(内联双引号)

使用 VBA 在 Excel 中的 SQL 表上使用参数化查询

如何使用 VBA 从单元格中获取一些字符