2

詳細なデータ セットとピボット テーブルを含むシートがたくさんあります。集計シートに、ピボット テーブルのみを表示したい。(もちろん、まったく新しいセットを作成するのではなく、DRY のままでいたいと思います。) 古いピボット テーブルを参照するにはどうすればよいですか?

必要に応じて、VBA を使用してこれを行うことができます。

4

1 に答える 1

1

このサブは、ピボットテーブルを「ライブ」に保ちます。必要がなければ、それらの上にPasteValuesを置くことができます。

Sub SummarizePivotTables()
    Dim wb As Workbook, ws As Worksheet, ss As Worksheet, pt As PivotTable
    Dim pasteRow As Long
    Const rowsBetween As Long = 1

    Set wb = ThisWorkbook
    Set ss = wb.Worksheets("Summary")
    pasteRow = 1 'first table row'

    For Each ws In wb.Worksheets
        For Each pt In ws.PivotTables
            'change this to TableRange1 if you do not want the page field included'
            With pt.TableRange2
                .Copy ss.Range("A" & pasteRow)
                pasteRow = pasteRow + .Rows.Count + rowsBetween
            End With
        Next pt
    Next ws
End Sub
于 2009-10-22T14:38:41.360 に答える