Shairalは、Excelリスト、Accessテーブル、OLAPデータなどのさまざまなデータソースを使用して、ピボットテーブルを毎日開発しています。彼が扱っている最も苛立たしいことの1つは、各フィールドの自動小計機能を一度に1つずつ抑制することです。使用するフィールドの数によっては、これには時間がかかる場合があります。 Shairalは、マクロを使用してすべてのフィールドの小計を一度に抑制する方が簡単ではないかと考えました。

答えは、マクロを使用する方が簡単だということです。 (これがマクロの目的です。面倒なことに飽き飽きします。)ただし、車輪の再発明ではなく、Microsoft MVP DebraDagliseshのサイトから採用した次のコードを検討することをお勧めします。

Sub NoSubtotals()

'turns off subtotals in pivot table     '.PivotFields could be changed to     '.RowFields or .ColumnFields

Dim pt As PivotTable     Dim pf As PivotField

On Error Resume Next     For Each pt In ActiveSheet.PivotTables         For Each pf In pt.PivotFields             'First, set index 1 (Automatic) to True,             'so all other values are set to False             pf.Subtotals(1) = True             pf.Subtotals(1) = False         Next pf     Next pt End Sub

影響を与えるピボットテーブルを表示してから、マクロを実行するだけです。

ピボットテーブルのすべてのフィールドの小計は一度に抑制されます。このコードのオリジナルは、Debraのサイトで入手できます:

http://www.contextures.com/xlPivot03.html#Subtotals

このサイトには、ピボットテーブルを操作するためのその他の優れた情報も含まれています。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(3103)は、Microsoft Excel 97、2000、2002、および2003に適用されます。