通过vba中的sql填充访问表单

时间:2012-02-07 16:45:30

标签: sql database forms ms-access vba

我有一个连续的表单,我想通过我的VBA脚本中的sql select语句填充。我似乎无法做到这一点:

sel = "Select * from table1 where  a = 10;"
Set SQL = db.OpenRecordset(sel)
SQL.Requery

2 个答案:

答案 0 :(得分:3)

为什么不将select指令放在表单的recordsource属性中?

Me.recordsource = "Select * from table1 where  a = 10;"

如果您的脚本位于表单的某个过程中,或者

myForm.recordsource = "Select * from table1 where  a = 10;"

如果您的脚本位于独立模块中

答案 1 :(得分:1)

如果您想使用Recordset而不是仅设置RecordSource(如Philippe Grondier's answer中已建议的那样),您也可以这样做:

Set Me.Recordset = db.OpenRecordset("select ...")

我必须承认,设置RecordSource是“标准方式”(特别是如果你已经有一个SQL语句,并希望用它填充表单),但我仍然希望展示这种替代解决方案。登记/> 我通常使用它来填充一个由函数返回的Recordset的表单。