VBAオジサンのらくがき帳

ピボットテーブルを作る

2021-06-30 00:00:00

試してみたところ、簡単なピボットテーブルなら意外と少ない行数で作成することができました。これをベースに実用的なピボットテーブルの作成に役立てることができればと思います。

Sub PivotTableSample()
    Dim pivCache As PivotCache
    Dim pivTable As PivotTable
    Dim pivRange As Range

    Set pivRange = Range("A1").CurrentRegion
    Set pivCache = ThisWorkbook.PivotCaches.Create(xlDatabase, pivRange)
    Set pivTable = pivCache.CreatePivotTable(Range("E1"), "PivotTable1")

    With pivTable.PivotFields("日付")
        .Orientation = xlRowField
        .NumberFormat = "mm/dd"
        .Position = 1
    End With

    With pivTable.PivotFields("場所")
        .Orientation = xlColumnField
        .Position = 1
    End With

    With pivTable.PivotFields("件数")
        .Orientation = xlDataField
        .Function = xlSum
        .NumberFormat = "#,##0"
    End With

    pivTable.TableStyle2 = "PivotStyleLight16"
End Sub

このサンプルコードを実行すると下のようになります。