【问题标题】:How to access the field name of a PivotCell.RowItem(n)?如何访问 PivotCell.RowItem(n) 的字段名称?
【发布时间】:2012-03-02 18:23:19
【问题描述】:

我有一个 Exel 2007 数据透视表,它使用具有 2 个行字段的经典布局。对于给定的数据 PivotCell,我想循环并识别该单元格的相应行字段名称和项目值。如果我在小计或总计行(与单元格关联的 0 或 1 个项目)上,我的代码可以正常工作。但是,如果我尝试使用与 2 个项目关联的单元格 - “运行时错误'1004':应用程序定义或对象定义的错误”,它会失败。

以下行在 i=1 时成功,但在 i=2 时失败:

cellSpec(1, i) = pvtCell.RowItems(i).LabelRange.PivotCell.PivotField.SourceName

当我将监视表达式设置为 pvtCell 时,我看到:

pvtCell.RowItems(2).LabelRange.PivotCell=<Application-defined or object-defined error>

然而pvtCell.RowItems(2).Name 具有预期的有效值。

有人知道获取 RowItem 字段名称的可靠方法吗?

【问题讨论】:

    标签: excel pivot-table vba


    【解决方案1】:

    我终于在专门的 Excel 论坛上找到了答案 :) http://www.mrexcel.com/forum/showthread.php?p=1638552#post1638552

    代码现在更简单了,而且确实有效!

    cellSpec(1, i) = pvtCell.RowItems(i).Parent.SourceName
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-26
      • 2021-11-17
      • 2017-11-21
      • 2021-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多