【问题标题】:Export / copy Access Pivot Table View to Excel 2003?将 Access 数据透视表视图导出/复制到 Excel 2003?
【发布时间】:2010-08-22 15:21:28
【问题描述】:

有没有办法使用 VBA 将 Access 2003 透视表视图(用于透视 206,000 条记录)复制到 Excel 2003?

【问题讨论】:

  • 记录数意味着您无法导出到 Excel 2003,除非您将数据集划分为具有少于 Excel 2003 限制的行数的单个工作表。您没有 Excel 2007/2010 可用吗?
  • 我们已经使用 Office 2007 多年,使用 Office 2010 也有一两个月——但不是商业高级用户。 IT 治理问题。
  • 我们的高级用户安装了 2003 和 2007 来处理更大的数据集,并允许他们按照自己的节奏转换 2003 代码。存在一些问题,但我们已经设法解决了这些问题。

标签: ms-access vba excel-2003


【解决方案1】:

除非结果超过 Excel 2003 的列和/或行最大值,否则不确定记录数是否重要。

DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel11, "qryPivot_Table_Name", "C:\Users\user\Documents\PivotTable.xlsx", True

【讨论】:

  • 谢谢,但这样做会导出实际的表(或查询)而不是数据透视表),这违反了 Excel 2003 的 65,536 行限制。所以,我只想导出数据透视表视图,即只导出结果。
  • 查询是pivot类型,除了pivot table查询的结果集,还会导出什么?
  • 我的数据透视结果集超过 200,000 条记录。我想导出“数据透视表视图”(带有隐藏的详细信息)——只有 40 行的摘要。
  • 如果您编写一个返回 40 行的查询,这就是导出的全部内容。你不会绕过行数限制。
  • acSpreadsheetTypeExcel12 只能在 A2007 和 A2010 中工作,并且会创建 Excel 2003 无法打开的电子表格,不是吗?
【解决方案2】:

这个怎么样?

DoCmd.OpenQuery "qryPivot_Table_Name", acViewPivotTable DoCmd.RunCommand AcCommand.acCmdPivotTableExportToExcel

之后,您只需要通过 Excel.Application 对象获取对新工作簿的引用

【讨论】:

  • 谢谢,但是虽然这导出了数据透视表,但它也导出了它后面的数据表——这与问题的目的相反——找到一种“轻量级”的方法来只导出数据透视表。
【解决方案3】:

如果您只需要数据的可见显示,例如总计,Ctrl+C 选择要显示的范围,然后 Shift+编辑+粘贴图片链接。当数据更新时,它会改变图像。我认为您可以将其调整为宏,并相当容易地生成您想要分发的内容。

【讨论】:

  • 好吧,我们已经升级到 Office 2010。如何将 Access 数据透视表复制为链接图像?我只能将数据透视表复制为文本。据我所知,您描述的方法在 Access 中不起作用,但它可能适用于 Excel、Word 等。
  • 抱歉,我误读了,以为您先进入 excel,然后想从那里显示枢轴,而不是发送整个数据负载。一旦您将查询拉入excel,就有可能。您可能会重现一个允许从 excel 进行查询的查询
  • 您可以在访问中保存数据透视表的查询。然后从该数据透视表查询生成一个表,并使用限制显示的过滤查询将其拉入 excel。您可以显着限制导入工作表的内容,然后在报告中显示相关最终显示的仅粘贴链接。
猜你喜欢
  • 1970-01-01
  • 2012-02-20
  • 2013-12-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多