我在Excel上工作并自动打开Access并运行一个宏,该宏将导入数据,刷新查询并导出它们。
但是,我的两个查询更难。我有一个make表查询,它从Find Duplicates查询运行,然后是一个删除查询,从同一个表中取出重复项。我假设如果我想要更新表,我必须重新运行make表并使用我新导入的数据删除查询。我怎样才能在Access中执行此操作?
我试过查找它,似乎我应该使用runSQL命令?我不确定如何格式化它,特别是当我尝试包含我的查询的SQL版本时,VBA不接受它。
另外,我应该将其作为单独的宏吗?或者我可以在我工作的那个中运行吗?
以下是两个查询中的SQL:
对于生成表查询:
SELECT [NameDupQuery1].* INTO [TableMakingAndEditing]
FROM [NameDupQuery1];
对于删除查询:
DELETE [TableMakingAndEditing].Carrier, [TableMakingAndEditing].[Field1], [TableMakingAndEditing].[Field2], [TableMakingAndEditing].[Field3], [TableMakingAndEditing].[Field4], [TableMakingAndEditing].[Field5], [TableMakingAndEditing].[Field6], [TableMakingAndEditing].[Field7], [TableMakingAndEditing].[Field8]
FROM [TableMakingAndEditing]
WHERE ((([TableMakingAndEditing].Carrier) In (SELECT [Carrier] FROM [TableMakingAndEditing] As Tmp GROUP BY [Carrier],[Field1],[Field2] HAVING Count(*)>1 And [Field1] = [TableMakingAndEditing].[Field1] And [Field2] = [TableMakingAndEditing].[Field2])));
任何帮助或建议?
答案 0 :(得分:0)
DoCmd.SetWarnings False
DoCmd.OpenQuery ("MakeTable Query")
DoCmd.OpenQuery ("Delete from table query")
DoCmd.SetWarnings True
将运行我的make table查询和删除查询!真棒!