【问题标题】:Refresh Excel Pivot Tables刷新 Excel 数据透视表
【发布时间】:2018-01-04 03:10:09
【问题描述】:

我有一个工作簿,其中包含多个带有数据透视表的选项卡。我可以将数据放在包含每个枢轴数据的选项卡上。我的问题是我不知道如何刷新数据透视表。我假设我需要循环浏览每张工作表,检查是否有数据透视表,然后刷新它。我只是找不到如何做到这一点。我发现的所有示例都使用 win32 选项,但我使用的是 Mac 和 Linux。

如果可能的话,我想用 openpyxl 来实现。

【问题讨论】:

  • 如果可能的话,我宁愿不使用宏。此外,有很多数据,我的用户不想等待宏运行并在每次打开工作簿时刷新表。在openpyxl中没有这样做的选项吗?看起来我可以构建和修改数据透视表,但不能刷新现有的。

标签: python excel pivot-table openpyxl


【解决方案1】:

从开发人员创建宏 -

Private Sub Worksheet_Change(ByVal Target As Range)

Worksheets("SheetName").PivotTables("PivotTableName").PivotCache.Refresh

结束子

【讨论】:

  • 使用 Python 吗?
【解决方案2】:

您是否在主要数据中使用“表格格式”?当您这样做时,您可以在表中附加新信息,而不必更改数据透视表中的新范围。然后,您只需选择数据透视表中的任何单元格,然后转到“分析”并选择“全部刷新”,它将刷新工作簿中的所有单元格。

我做了这个Tutorial 来表明这一点。它是西班牙语的,但我使用的是英文版的 Excel,所以很容易理解。

【讨论】:

    【解决方案3】:

    Worksheets("SheetName").PivotTables("PivotTableName").PivotCache().Refresh()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-30
      • 2015-02-07
      • 1970-01-01
      • 2012-08-16
      • 1970-01-01
      • 2016-09-07
      • 1970-01-01
      相关资源
      最近更新 更多