Access SQL查询-在输入的多个查询中从表更改
我在Access的SQL视图中构建了一系列几乎相同的查询,如下所示(每个不同的查询中的条件都会更改) 我正在寻找一种方法,一次从[tablename]更改所有查询中的Access SQL查询-在输入的多个查询中从表更改,sql,ms-access-2007,Sql,Ms Access 2007,我在Access的SQL视图中构建了一系列几乎相同的查询,如下所示(每个不同的查询中的条件都会更改) 我正在寻找一种方法,一次从[tablename]更改所有查询中的位,可能是从某种输入框 我希望这是可能的 假设您乐于使用VBA,您可以使用以下子例程: Public Sub ChangeTable(strQueryName As String, strNewTable As String) Dim db As DAO.Database Dim qdf As DAO.QueryD
位,可能是从某种输入框
我希望这是可能的 假设您乐于使用VBA,您可以使用以下子例程:
Public Sub ChangeTable(strQueryName As String, strNewTable As String)
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Dim sqlString As String
Set db = CurrentDb() 'Sets the database'
Set qdf = db.QueryDefs("" & strQueryName & "") 'Tells the sub which query to look at'
sqlString = Replace(qdf.SQL, "[Renfrewshire Raw Data]", "" & strNewTable & "", 1) 'Grabs the sql from your query and replaces the table name'
qdf.SQL = sqlString 'Puts your new sql back into the query'
End Sub
这将从查询中获取sql并用新表名替换表名。如果需要,您可以创建一个表单,并从中获取sub所需的两个变量
Public Sub ChangeTable(strQueryName As String, strNewTable As String)
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Dim sqlString As String
Set db = CurrentDb() 'Sets the database'
Set qdf = db.QueryDefs("" & strQueryName & "") 'Tells the sub which query to look at'
sqlString = Replace(qdf.SQL, "[Renfrewshire Raw Data]", "" & strNewTable & "", 1) 'Grabs the sql from your query and replaces the table name'
qdf.SQL = sqlString 'Puts your new sql back into the query'
End Sub