hiko-blog

VBA業務改善

MENU

従来のピボットテーブルの書式でピボットテーブルを作成

Sub CreatePivotTableWithFormat()
    Dim ws As Worksheet
    Dim pt As PivotTable
    Dim pc As PivotCache
    Dim rngData As Range
    Dim rngDest As Range
    
    ' データ範囲を指定します。適切に変更してください。
    Set ws = ThisWorkbook.Worksheets("Sheet1")
    Set rngData = ws.Range("A1:D100") ' データの範囲を指定
    
    ' ピボットテーブルを配置する場所を指定します。適切に変更してください。
    Set rngDest = ws.Range("F1")
    
    ' ピボットキャッシュを作成します。
    Set pc = ThisWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=rngData)
    
    ' ピボットテーブルを作成します。
    Set pt = rngDest.PivotTableWizard(TableDestination:=rngDest, TableName:="PivotTable1", SourceType:=xlDatabase, SourceData:=rngData)
    
    ' ピボットテーブルのフィールドを配置します。適切に変更してください。
    With pt
        .PivotFields("Field1").Orientation = xlRowField ' 行フィールドに配置
        .PivotFields("Field2").Orientation = xlColumnField ' 列フィールドに配置
        .PivotFields("Field3").Orientation = xlDataField ' データフィールドに配置
    End With
    
    ' ピボットテーブルの書式設定を適用します。適切に変更してください。
    With pt
        ' ピボットテーブルの書式設定を行います。
        ' 例えば、フォントの変更、罫線の追加、背景色の変更などを行うことができます。
        ' 以下は書式設定の例です。必要に応じて変更してください。
        .TableStyle2 = "PivotStyleLight1" ' 書式を適用
        .RowAxisLayout xlTabularRow ' 行のレイアウトを表形式に変更
    End With
End Sub