将查询保存到表

时间:2016-03-10 10:03:02

标签: vba ms-access ms-access-2010

我已经搜索了一个我正在问的问题,虽然我发现部分答案我无法完全理解。我正在使用access2010。

简单来说,我想过滤表[newsearch]以根据我的WHERE条件显示结果。 我可以使用SELECT和WHERE条件,我通过查询获得结果,但我希望将此结果保存到[newsearch],这意味着我希望此[newsearch]仅包含此查询的结果

我尝试使用SELECT INTO,但由于我的源和目标是[newsearch],它不起作用。

我现在运行的查询是:

strSQL = "SELECT * FROM [newsearch] WHERE [newsearch].[" & Me.Combo17 & "] = '" & Me.Text18 & "'"
Set qdef = db.CreateQueryDef("User query results", strSQL)
qdef.close
Set qdef = Nothing
Set db = Nothing
DoCmd.OpenQuery "User query results", acViewNormal

这会在查询表中显示结果,但我希望将其保存到[newsearch]

我该怎么做?

1 个答案:

答案 0 :(得分:1)

select into查询创建了一个表,但显然您无法创建已存在的表。您有两个选择:

  1. 不要选择您需要的内容,而是从表格中删除您不需要的记录:delete from [newsearch] where field3<>xyz

  2. 您可以使用select into创建新表格,然后删除[newsearch],然后将新表格重命名为[newsearch]