【发布时间】:2012-02-29 02:46:16
【问题描述】:
我有一个连续的表格,我想通过我的 VBA 脚本中的 sql select 语句来填充它。我似乎无法完成这项工作:
sel = "Select * from table1 where a = 10;"
Set SQL = db.OpenRecordset(sel)
SQL.Requery
【问题讨论】:
标签: sql database forms ms-access vba
我有一个连续的表格,我想通过我的 VBA 脚本中的 sql select 语句来填充它。我似乎无法完成这项工作:
sel = "Select * from table1 where a = 10;"
Set SQL = db.OpenRecordset(sel)
SQL.Requery
【问题讨论】:
标签: sql database forms ms-access vba
你为什么不把你的选择指令放在表单的记录源属性中?
Me.recordsource = "Select * from table1 where a = 10;"
如果您的脚本在表单的某个过程中,或者
myForm.recordsource = "Select * from table1 where a = 10;"
如果您的脚本位于独立模块中
【讨论】:
如果您想使用 Recordset 而不仅仅是设置 RecordSource(就像 Philippe Grondier's answer 中已经建议的那样),您也可以这样做:
Set Me.Recordset = db.OpenRecordset("select ...")
我必须承认,设置RecordSource 是“标准方式”(尤其是如果您已经有一条 SQL 语句并想用它填充表单),但我仍然想展示这个替代解决方案。
我通常使用它来使用函数返回的 Recordset 填充表单。
【讨论】: