大体でIT
大体でIT
Excel VBAで、ピボットテーブルを並び替えする方法について、ご紹介します。使うVBAコードは、「AutoSort」です。「ラベル」を並び替えしたい場合は、「ラベル名」を使います。「ラベルの値」を並び替えしたい場合は、「ラベル名」と「値の名前」を使うとできます。ピボットテーブルの操作を、VBAで自動化していきましょう。
この記事では、VBAでピボットテーブルを並び替えする方法について、ご紹介します。
ピボットテーブルで並び替えする箇所は、2つあります。
VBAで並び替えをする場合は、「AutoSort」を使って並び替えをします。
「ラベル」を並び替えしたい場合は、「ラベル名」を使います。
「ラベルの値」を並び替えしたい場合は、「ラベル名」と「値の名前」を使うとできます。
では、VBAでピボットテーブルを並び替えする方法について、解説していきます。
目次から使いそうな説明のところへ移動すると便利ですよ。
ピボットテーブルを並び替えるVBAコードを、まとめまています。
VBAコードだけ確認したい場合に、ご活用ください。
'昇順
ActiveSheet.PivotTables(1).PivotFields("商品").AutoSort xlAscending, "商品" '「ラベル」を「昇順」
ActiveSheet.PivotTables(1).PivotFields("商品").AutoSort xlAscending, "合計 / 売上" '「値」を「昇順」
'降順
ActiveSheet.PivotTables(1).PivotFields("商品").AutoSort xlDescending, "商品" '「ラベル」を「降順」
ActiveSheet.PivotTables(1).PivotFields("商品").AutoSort xlDescending, "合計 / 売上" '「値」を「降順」
VBAで、ピボットテーブルを昇順に並び替えてみます。
「ラベル」を昇順に並び替えるVBAコードは、こんな感じになります。
'ラベルを「昇順」にする
ActiveSheet.PivotTables(1).PivotFields(ラベル名).AutoSort xlAscending, ラベル名
「ラベル」の「値」を昇順に並び替えるVBAコードは、こんな感じになります。
'ラベルの「値」を「昇順」にする
ActiveSheet.PivotTables(1).PivotFields(ラベル名).AutoSort xlAscending, 値の名前
クロス集計表を、ピボットテーブルで作成しておきます。
ピボットテーブルを作成しておく
「ラベル」と「ラベルの値」を昇順に並び替えてみます。
「商品」ラベルを「昇順」
「商品」ラベルを昇順に並び替えるVBAコードは、こんな感じです。
Sub TEST1()
'「商品」ラベルを「昇順」にする
ActiveSheet.PivotTables(1).PivotFields("商品").AutoSort xlAscending, "商品"
End Sub
VBAで「商品」ラベルを「昇順」に並び替えができました。
「支店」ラベルを「昇順」
Sub TEST2()
'「支店」ラベルを「昇順」にする
ActiveSheet.PivotTables(1).PivotFields("支店").AutoSort xlAscending, "支店"
End Sub
VBAで、「支店」ラベルを「昇順」に並び替えることができました。
「商品」ラベルの「値」を「昇順」
「商品」ラベルの「値」を昇順に並び替えるVBAコードは、こんな感じです。
Sub TEST3()
'「商品」ラベルの「値」を「昇順」にする
ActiveSheet.PivotTables(1).PivotFields("商品").AutoSort xlAscending, "合計 / 売上"
End Sub
VBAで、「商品」ラベルの「値」を「昇順」に並び替えができました。
「支店」ラベルの「値」を「昇順」
次は、「支店」ラベルの「値」を昇順に並び替えてみます。
Sub TEST4()
'「支店」ラベルの「値」を「昇順」にする
ActiveSheet.PivotTables(1).PivotFields("支店").AutoSort xlAscending, "合計 / 売上"
End Sub
VBAで「支店」ラベルの「値」を「昇順」に並び替えができました。
VBAで、ピボットテーブルを降順に並び替えてみます。
降順に並び替えしたいときは、「xlDescending」を使うとできます。
「ラベル」を降順に並び替えるVBAコードは、こんな感じになります。
'ラベルを「降順」にする
ActiveSheet.PivotTables(1).PivotFields(ラベル名).AutoSort xlDescending, ラベル名
「ラベル」の「値」を降順に並び替えるVBAコードは、こんな感じになります。
'ラベルの「値」を「降順」にする
ActiveSheet.PivotTables(1).PivotFields(ラベル名).AutoSort xlDescending, 値の名前
ピボットテーブルを作成しておく
「ラベル」と「ラベルの値」を降順に並び替えてみます。
「商品」ラベルを「降順」
「商品」ラベルを降順に並び替えるVBAコードは、こんな感じです。
Sub TEST5()
'「商品」ラベルを「降順」にする
ActiveSheet.PivotTables(1).PivotFields("商品").AutoSort xlDescending, "商品"
End Sub
VBAで「商品」ラベルを「降順」に並び替えができました。
「支店」ラベルを「降順」
Sub TEST6()
'「支店」ラベルを「降順」にする
ActiveSheet.PivotTables(1).PivotFields("支店").AutoSort xlDescending, "支店"
End Sub
VBAで、「支店」ラベルを「降順」に並び替えることができました。
「商品」ラベルの「値」を「降順」
「商品」ラベルの「値」を降順に並び替えるVBAコードは、こんな感じです。
Sub TEST7()
'「商品」ラベルの「値」を「降順」にする
ActiveSheet.PivotTables(1).PivotFields("商品").AutoSort xlDescending, "合計 / 売上"
End Sub
VBAで、「商品」ラベルの「値」を「降順」に並び替えができました。
「支店」ラベルの「値」を「降順」
次は、「支店」ラベルの「値」を降順に並び替えてみます。
Sub TEST8()
'「支店」ラベルの「値」を「降順」にする
ActiveSheet.PivotTables(1).PivotFields("支店").AutoSort xlDescending, "合計 / 売上"
End Sub
VBAで「支店」ラベルの「値」を「降順」に並び替えができました。
この記事では、VBAでピボットテーブルを並び替えする方法について、ご紹介しました。
ピボットテーブルで並び替えする箇所は、2つあります。
VBAで並び替えをする場合は、「AutoSort」を使って並び替えをします。
「ラベル」を並び替えしたい場合は、「ラベル名」を使います。
「ラベルの値」を並び替えしたい場合は、「ラベル名」と「値の名前」を使うとできます。
参考になればと思います。最後までご覧くださいまして、ありがとうございました。