【问题标题】:Excel VBA - PivotItems returns inexesting valueExcel VBA - PivotItems 返回无效值
【发布时间】:2016-10-10 13:53:01
【问题描述】:

在 Excel 工作簿中,我在工作表上有“静态”数据透视表,它基于另一个工作表中的数据。

我正在刷新我的数据表上的数据(谢谢队长 Obvious!),然后我想显示所有项目,除了空白项目,所以我正在运行 throw 所有 PivotItems 以将它们设置为可见,最后,取消选择空白:

i = 1

ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").ClearAllFilters
ThisWorkbook.Sheets("TCD").PivotTables(i).PivotCache.MissingItemsLimit = xlMissingItemsNone
For Each PvI In ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").PivotItems
    PvI.Visible = True
Next

ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").PivotItems("(blank)").Visible = False

在我的循环的最后一次发生时,在第 4 个 PivotItems 上,我有一个执行错误'1004'(我会从法语翻译它,可能会出现一些错误,抱歉)“无法定义属性 Visible PivoItem 类”,所以我检查了几件事:

?ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").PivotItems.count
 4 

对于 x = 1 到 4:

?ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").PivotItems(x)
(blank)
SFT
ACQ
TEP

看起来我的数据透视表中有 4 个项目,但是

而且,当我检查我的数据时,我只有 2 个不同的统计数据:

那么第 4 个 PivotItems' 元素是从哪里来的,我该如何驾驭它呢? 谢谢。

【问题讨论】:

  • 我遇到了这样一个令人惊讶的问题,检查Pivot Table options(右键单击表格),在Data 选项卡中,您应该找到Retain items deleted from the data source,选择None 为@987654333 @。然后刷新一切应该是为了! ;)(那个错误让我发疯了好几个小时!^^)
  • 实际上它已经是无,我取消选中所有内容,选择最大值,保存,关闭,再次检查并设置为无,现在它工作正常......谢谢提示,我已经从来没有听说过这个! i.stack.imgur.com/oFSOT.jpg

标签: vba excel pivot-table visible


【解决方案1】:

我遇到了这样一个令人惊讶的问题,您需要检查数据透视表选项:

  • 右键单击数据透视表,
  • 选择Pivot Table options
  • 进入Data标签
  • 找到Retain items deleted from the data source
  • 为Number of items to retain per field选择None!
  • 然后刷新!现在一切都应该好了! ;)

(那件事让我发疯了好几个小时!^^)

【讨论】:

    猜你喜欢
    • 2019-03-30
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 2018-05-18
    • 1970-01-01
    • 2022-06-20
    • 2012-05-14
    • 1970-01-01
    相关资源
    最近更新 更多