2

我的 excel 表中有如下数据:

在此处输入图像描述

为了解释起见,我隐藏了一些列(请忽略它们)。我以您在上面看到的视图为中心,其输出如下:

在此处输入图像描述

但是,我期待类似于以下的输出,其中 L1 和 L1C(表示相同的东西)显示为一个实体(好像它来自一列本身)

在此处输入图像描述

excel 的数据透视功能是否提供了这种效果?

ps:如果您想访问我使用过的数据,请访问我的 google doc 文件:单击此处

更新:

我为达到预期结果所做的是通过 excel 公式生成所需的列。(因此,您会注意到我在上面共享的电子表格中名称字段后面的列)。这是您在旋转期间在 excel 中解决此问题的唯一方法吗?

4

1 回答 1

1

在前两个屏幕截图中设置数据和透视后,您可以在数据透视表中选择一个单元格并尝试运行此代码以获取最后一个屏幕截图:

Sub UpdatePivot()
With ActiveCell.PivotTable
    AddPivotLabels .PivotFields("l1"), .PivotFields("l1c")
    AddPivotLabels .PivotFields("l2"), .PivotFields("l2c")
    AddPivotLabels .PivotFields("l3"), .PivotFields("l3c")
End With
End Sub

Sub AddPivotLabels(pName1 As PivotField, pName2 As PivotField)
Dim i As Long
For i = 1 To pName1.PivotItems.Count
    pName1.PivotItems(i).Value = pName1.PivotItems(i).SourceName & _
                            " (" & pName2.PivotItems(i).SourceName & ")"
Next i
End Sub

注意:这假设关系是 1-1,您可能希望在运行更大的数据集之前检查这一点。

于 2012-08-29T19:44:36.070 回答