我有一个长157000行,宽17个字段的Access查询,我尝试使用DAO记录集和.copyfromrecordset使用VBA下载到excel 2016,但是仅下载了前90行,
进行了一个记录集计数,发现记录集中确实只有90行,这使我认为查询存在问题,然后尝试了以下操作:
- 创建了一个Make表,将查询的内容插入到新表中,这给了我无效使用null错误
- 使用查询显示的相同数据类型从头开始创建表,尝试从查询中追加以接收相同的nullerror
- 可以将查询中的65536行复制到新创建的表中(剪贴板可以容纳的最大值),VBA可以从表中下载记录集没有问题,因此可以验证上面所说的问题是将查询的内容复制到一张桌子。
- 试图附加到此已加载的数据,同样是null错误
- 将65536行手动导出到excel,并作为表尝试附加到该表的方式又导入回去,这也是一个空错误
- 尝试在VBA中使用DoCmd.Output,但也只能导出65536行
- 如果我尝试导出时取消选中“使用格式和布局导出数据”,则几秒钟后它会出错并提示无法导出
- 也无法导出为文本文件
所以一种解决方法是将37000个157000行查询的内容复制到我的表中(虽然不是很容易做到,除非我想等待1/2小时,而鼠标从65536行向下滚动到接下来的65536行,等等)是否可以正常运行,但这并不能实现非常好的自动化,因为这需要定期进行?