如何将 SQL 结果放入 VBA 中的变量中

Posted

技术标签:

【中文标题】如何将 SQL 结果放入 VBA 中的变量中【英文标题】:How can I put SQL result into variable in VBA 【发布时间】:2021-03-01 09:22:06 【问题描述】:

我有如下示例表

| ID | Qty |
| -- | ----|
| 1  | 5   |
| 2  | 7   |
| 3  | 8   |
| 4  | 9   |
| 5  | 12  |

如何将以下查询的结果传递到 VBA 变量中以用于下一个查询(更新和插入)?

SELECT example_tab.Qty
FROM example_tab
WHERE ID = 4

例如 test_variable = 9

【问题讨论】:

这能回答你的问题吗? How to use a SQL SELECT statement with Access VBA 您的 VBA 是托管在 Access 中还是其他一些应用程序中?另外,您的意思是获取查询结果并在另一个语句中使用它吗?更多上下文会有所帮助。 【参考方案1】:

要将单个值放入变量中,可以使用DLookup:

Dim test_variable As Variant

test_variable = DLookup("[Qty]", "example_tab", "[ID] = 4")

【讨论】:

【参考方案2】:

这是你要找的吗?

sSQL = "SELECT example_tab.Qty FROM example_tab WHERE ID = 4"

Dim rs As DAO.Recordset     
Set rs = CurrentDB.OpenRecordset(sSQL)

【讨论】:

以上是关于如何将 SQL 结果放入 VBA 中的变量中的主要内容,如果未能解决你的问题,请参考以下文章

如何将数据库查询结果放入变量中

尝试使用 sql/vba 的结果填充文本框并出现 #Name 错误

SQL存储过程如何将结果放入变量?

学习记录--如何将exec执行结果放入变量中?

sql的vba代码中''附近的语法不正确

将动态 SQL 的结果放入 sql-server 的变量中