大体でIT
大体でIT
Excel VBAで、ピボットテーブルを削除する方法について、ご紹介します。ピボットテーブルの削除には、「ピボットテーブルの削除」や「シートの削除」、「ピボットテーブルの初期化」、「フィールドの削除」とやり方が複数あります。目的に応じて、削除する方法を選びましょう。
この記事では、ピボットテーブルを削除する方法について、ご紹介します。
- ピボットテーブルのみを削除
- シートを削除してピボットテーブルを削除
- ピボットテーブルを初期化
- ピボットテーブルのフィールドを削除
こんな感じで、目的に合わせて、ピボットテーブルを削除することができます。
ピボットテーブルの操作を自動化する際には、「ピボットテーブルの削除」が必要となってきますので、覚えておきましょう。
では、ピボットテーブルを削除する方法について、解説していきます。
目次から使いそうな説明のところへ移動すると便利ですよ。
ピボットテーブルの削除について、VBAコードをまとめています。
VBAコードだけ確認したい場合に、ご活用ください。
'ピボットテーブルを削除
ActiveSheet.PivotTables(1).TableRange1.ClearContents 'ピボットテーブルを削除
ActiveSheet.PivotTables(1).TableRange2.ClearContents 'フィルターフィールドを含むピボットテーブルを削除
'シートを削除してピボットテーブルを削除
ActiveSheet.Delete
'ピボットテーブルを初期化
ActiveSheet.PivotTables(1).ClearTable
'フィールドを削除
ActiveSheet.PivotTables(1).PivotFields("商品").Orientation = Hidden '「商品」の項目を削除
ActiveSheet.PivotTables(1).PivotFields("支店").Orientation = Hidden '「支店」の項目を削除
ActiveSheet.PivotTables(1).PivotFields("合計 / 売上").Orientation = Hidden '「合計 / 売上」の項目を削除
ピボットテーブルが、「フィルターフィールドを含むかどうか」で、ちょっと変わります。
ピボットテーブルを削除する場合は、「フィルターフィールドを含む場合の方法」を、覚えておけばどちらにも対応できます。
ピボットテーブルを削除するVBAコードは、こんな感じになります。
Sub TEST1()
'ピボットテーブルを削除する
ActiveSheet.PivotTables(1).TableRange1.ClearContents
End Sub
ピボットテーブルを用意
ピボットテーブルを削除できた
フィルターフィールドを含む場合に、ピボットテーブルを削除するVBAコードは、こんな感じです。
「TableRange2」の部分が変わっています。
Sub TEST2()
'フィルターフィールドを含めてピボットテーブルを削除
ActiveSheet.PivotTables(1).TableRange2.ClearContents
End Sub
これで、フィルターフィールドを含めて削除できます。
フィルターフィールドを含むピボットテーブルを、用意しました。
フィルターフィールドを含むピボットテーブル
ピボットテーブルを削除できた
フィルターフィールドを含めて、ピボットテーブルを削除できました。
フィルターフィールドがないピボットテーブルでも、「TableRange2」を使って、ピボットテーブルを削除できます。
ピボットテーブルを削除する場合は、「TableRange2」を使いましょう。
VBAでシートを削除してピボットテーブルを削除する
VBAで、シートを削除して、ピボットテーブルを削除するという方法もあります。
ピボットテーブルが、別シートに作成されている場合に、使えます。
Sub TEST3()
Application.DisplayAlerts = False
'シートを削除
ActiveSheet.Delete
End Sub
削除する際に、アラートを出さないように、「Application.DisplayAlerts = False」としています。
ピボットテーブルを用意
ピボットテーブルを削除
シートを削除して、ピボットテーブルを削除できました。
初期化は、フィールドが設定されていない、初期の状態のピボットテーブルにすることです。
ピボットテーブルを初期化するVBAコードは、こんな感じです。
Sub TEST4()
'ピボットテーブルを初期化する
ActiveSheet.PivotTables(1).ClearTable
End Sub
ピボットテーブルを用意
ピボットテーブルを初期化できた
VBAで、ピボットテーブルの「フィールド」を削除してみます。
行や列、フィルター、値のフィールドに設定した項目を、削除することができます。
ピボットテーブルに設定した「商品」の項目を削除してみます。
Sub TEST5()
'「商品」の項目を削除
ActiveSheet.PivotTables(1).PivotFields("商品").Orientation = Hidden
End Sub
フィールドを設定したピボットテーブルを用意しました。
ピボットテーブルを用意
「商品」の項目を削除できた
ピボットテーブルに設定した「支店」の項目を削除してみます。
Sub TEST6()
'「支店」の項目を削除
ActiveSheet.PivotTables(1).PivotFields("支店").Orientation = Hidden
End Sub
フィールドを設定したピボットテーブルを用意しました。
ピボットテーブルを用意
「支店」の項目を削除できた
ピボットテーブルに設定した「合計 / 売上」の項目を削除してみます。
Sub TEST7()
'「合計 / 売上」の項目を削除
ActiveSheet.PivotTables(1).PivotFields("合計 / 売上").Orientation = Hidden
End Sub
フィールドを設定したピボットテーブルを用意しました。
ピボットテーブルを用意
「合計 / 売上」の項目を削除できた
この記事では、ピボットテーブルを削除する方法について、ご紹介しました。
- ピボットテーブルのみを削除
- シートを削除してピボットテーブルを削除
- ピボットテーブルを初期化
- ピボットテーブルのフィールドを削除
こんな感じで、目的に合わせて、ピボットテーブルを削除することができます。
ピボットテーブルの操作を自動化する際には、「ピボットテーブルの削除」が必要となってきますので、覚えておきましょう。
参考になればと思います。最後までご覧くださいまして、ありがとうございました。