在Excel中连接到Access查询的限制是什么?

我有一个Access 2007数据库有一些表,有些是相当大的(100,000 +logging); 我创build了一个union query来从多个表中抽取一些相同types的数据到一个大的查询中,以便进行数据透视表操作和报告。 例如:

 SELECT Language FROM Table1 UNION ALL SELECT Language FROM Table2 UNION ALL SELECT Language FROM Table3; 

这工作。 然而,我很快发现,当连接到Excel 2007中的数据源时,并不会显示union query 。所以,我创build了第二个查询来引用union query 。 像这样:

 SELECT * FROM [The Above Union Query]; 

此查询起作用,最初可从Excel访问。 时间stream逝,我添加了更多的数据。 突然间,当我从Excel连接到我的Access数据库时,引用联合的查询已经消失。 MS Access显示没有问题的迹象(数据显示在Access中),我的其他非联合查询显示在Excel 2007中…但不是引用联合的那个。

可能会发生什么? 为什么它消失了?

我注意到,如果将union query中的某些引用表切换到较小的表(具有较less的行),则突然查询将再次出现在Excel中。 至less,我认为这是不同的。 我真的不能指责为什么一些union queries不会显示,有些会。

难倒了,需要一些指导。 谢谢。

如果你在你的联合查询上做了一个查询,而不是select查询。 那么只要Excel引用新表? 这至less会告诉你,如果你在Excel中超出了行限制,但这似乎不大可能,因为所有的报告都显示他们已经显着增加了Excel 2007中Excel 2007的行限制。你甚至可以在Excel中写一个macros来告诉Access在获取数据之前运行生成表。