如何在MS Access中编写一个宏,它将自动运行多个SQL查询并同时保存它们?如果我选择OpenQuery操作,那么它需要一个已经保存但我想使用宏在多个表上运行查询的查询,有没有办法做到这一点!
使用简单的函数来创建查询。然后你只需要运行它。如果您不提供名称,则不会存储查询(临时)。
创建查询:
Private Function CreateQueryDefinition(ByVal qryName As String, ByVal sqlCommand As String) As DAO.QueryDef
Set CreateQueryDefinition = CurrentDb().CreateQueryDef(qryName, sqlCommand)
End Function
打电话给它:
Private Sub Form_Load()
Dim q As DAO.QueryDef
Set q = CreateQueryDefinition("QueryName", "UPDATE Table SET Table.Field = 'Whatever';")
q.Execute dbFailOnError
End Sub
请注意,如果您尝试创建已存在的查询,则会引发错误。