Sql Access宏创建重复的表,然后断开宏

Sql Access宏创建重复的表,然后断开宏,sql,vba,ms-access,Sql,Vba,Ms Access,我继承了一个基于Access的仪表板,它使用一系列SQL查询和生成表操作将这些查询的结果写入位于另外两个Access文件中的表中 有一个宏运行所有的make table命令,这些命令依次运行sql查询。当我在我的机器上运行这个程序时,所有这些程序都在工作,但是当我从处理定时刷新的VM上运行它时,它会为其中一个查询创建一个重复的表 如果从表1数据库中删除该表,查询数据库将成功运行,并在表1中创建正确的表和副本。但是,以后每次宏都会失败,并出现一个错误,说明重复表已经存在 这是生成表sql: SEL

我继承了一个基于Access的仪表板,它使用一系列SQL查询和生成表操作将这些查询的结果写入位于另外两个Access文件中的表中

有一个宏运行所有的make table命令,这些命令依次运行sql查询。当我在我的机器上运行这个程序时,所有这些程序都在工作,但是当我从处理定时刷新的VM上运行它时,它会为其中一个查询创建一个重复的表

如果从表1数据库中删除该表,查询数据库将成功运行,并在表1中创建正确的表和副本。但是,以后每次宏都会失败,并出现一个错误,说明重复表已经存在

这是生成表sql:

SELECT [SQLQueryName].* 
INTO [TableName] 
IN 'filepath\Tables1.accdb'
FROM SQLQueryName;
这与所有其他make表查询使用的结构相同,并且没有此问题。我不确定这是否重要或是否会告诉某人一些事情,但重复表的名称相同,末尾添加了1。我们最近还必须安装一个新的虚拟机,并且出现了很多奇怪的问题,这些问题与以前的虚拟机不一样,在以前的虚拟机中,这些问题已经运行了很长一段时间

到目前为止,我已经尝试压缩查询和Table1数据库文件。我已尝试删除make table查询并创建新版本。我已尝试删除表并从表1中复制。我尝试将数据库文件回滚到几个星期前的版本。我们还确保Access的版本与我的电脑上的版本相同

我目前正在尝试将其更改为delete row/append row方法,而不是make table,但即使这样做有效,我仍然希望知道为什么会发生这种情况

编辑:

make表中失败的实际代码,已删除filepath

SELECT [012_HHtoERorOBS].* 
INTO [HHtoER-Obs] 
IN '\\filepath\MiscTablesB.accdb'
FROM 012_HHtoERorOBS;
下面是另外两个正在工作的make表查询的代码。每个make table查询都遵循sql查询中相同的select*格式,以将数据放入目标accdbs中的表中

SELECT [010_ScheduledVisitsQuery].* 
INTO ScheduledVisits 
IN '\\filepath\MiscTablesB.accdb'
FROM 010_ScheduledVisitsQuery;

SELECT [020_HH_HO].* 
INTO HH_Referred_to_HO 
IN '\\filepath\MiscTablesB.accdb'
FROM 020_HH_HO;
运行make table查询时,所有这些表都存在于目标accdbs中。宏不包含任何用于删除表的命令。这是宏顶部的屏幕截图,它重复所有make table查询,然后以退出访问的命令结束


它可能无法删除旧(现有)表,因此无法创建新表。这肯定是可能的。有没有办法告诉我们为什么它不能删除这个特定的表,但可以删除其他表?我们只需要更具体的信息来帮助。请使用实际SQL查询(即使重复)编辑所有make table语句或示例。您正在使用存储查询吗?VBA函数?实际名称或更接近实际名称优于通用
TableName
。每个查询是否使用子句中的
作为外部ACCDB?如果目标表存在,则所有生成表查询都应失败。添加了其他信息。这些是删除了filepath的实际make表查询。我认为我没有使用存储查询或VBA函数。每个make表使用与in子句相同的格式访问目标数据库。除此之外,所有make table查询都不会失败,并且它们在目标文件中都有现有表。