所以,这可能是一个有点愚蠢的问题,但我找不到足够的材料,或者我只是没有得到它。
我要做的是,在我的VBA代码中使用SQL语句。 我知道可以使用:DoCmd.runSQL,但这似乎对我不起作用,它总是吐出错误信息。
例如,我尝试:
Set StringArray() = DoCmd.RunSQL("Select column from table")
或
If (DoCmd.RunSQL(Select sum(column) from table where coulmn = '" + Me.txtField + '") > 0) Then
但它总是抛出类似:编译错误。预期的函数或变量。
我不知道我是否只是理解了错误,但我认为你可以在DoCmd.runSQL中使用普通的SQL语句。
答案 0 :(得分:2)
DoCmd.RunSQL是一种方法。它不返回结果,它执行一些动作。因此,您无法将其分配给StringArray()。
在此处查看更多信息:
https://msdn.microsoft.com/en-us/vba/access-vba/articles/docmd-runsql-method-access
答案 1 :(得分:1)
使用 GetRows 使用此骨架:
Dim rs As DAO.Recordset
Set rs = CurrentDb.Openrecordset("Select column from table")
StringArray = rs.GetRows()
rs.Close
Set rs = Nothing
查看完整故事的GetRows文档。