我正在尝试在 Access 2013 中创建一个运行 make 表查询的宏。据我所知,使用宏操作“OpenQuery”是可以做到这一点的最明显的操作。然而,这实际上打开了查询,并没有创建实际的物理表。
如何使该宏运行 make table 查询来创建新表?
从数据库对象列表运行生成表查询与 VBA 中的
DoCmd.OpenQuery "make table query"
相同,并且与使用宏操作“OpenQuery”运行宏相同。
在所有情况下都会创建表(在显示有关创建表的警告之后)。
因此,要么您选择了错误的查询,要么它实际上不是一个生成表查询(SELECT INTO)。
您可能已经解决了您的问题,但安德烈的答案是正确的,您只需确保在将其设置为“制作表”查询后保存查询即可。它应该在您的对象列表中显示并带有感叹号,表示它将更新数据。
他多次确认该查询是一个表。如果不选择“是”删除旧表并用新表替换,则宏不会运行。特别是在未设置警告的情况下。如何做到这一点并选择“是”是另一个难题。