合并两列for excel pivot报告

时间:2012-08-29 14:31:02

标签: excel pivot excel-2010 pivot-table

我的Excel工作表中的数据如下所示:

enter image description here

为了便于解释,我隐藏了一些列(请忽略它们)。我已经对上面看到的视图进行了调整,输出结果如下:

enter image description here

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

enter image description here

excel的支点功能是否提供了这种效果?

ps:如果您想访问我用过的数据,请访问我的google doc文件:点击here

更新

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

1 个答案:

答案 0 :(得分: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,您可能希望在运行较大的数据集之前检查它。