• ベストアンサー

ピボットテーブル集計アイテムの書式を設定したい。

ピボットテーブル集計アイテムの書式を設定したい。 一番下の画像の元データを使って、その下のピボットテーブルを作りました。返品率は集計フィールド、前年比はピボットフィールド「年度」に集計アイテムを追加しました。 ここまでは良かったのですが、前年比は各データとも%表示としたいのです。ピボットテーブル内の各セル毎に個別に書式設定をすれば%表示されるのですが、元データを更新する都度手動で書式設定をせずに済む方法はないでしょうか? ちなみに、 以下の様なマクロも試してみたのですが、 ActiveSheet.PivotTables("TEST").PivotFields("年度").PivotItems("前年比").NumberFormat = "0.00%" オブジェクトはこのプロパティまたはメソッドをサポートしていませんと怒られてしまいました。(汗;)

質問者が選んだベストアンサー

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

『前年比』のセル左端にマウスカーソルを持っていくと右向き矢印が表示されます。 それをクリックすると『前年比』アイテムが全選択できます。 その状態で書式設定してみてください。 右向き矢印が表示されない場合、『前年比』セル右クリック[選択]-[選択範囲を有効にする]です。 それでも書式が維持されない場合、一応、マクロ対応案。 Sub macro()   ActiveSheet.PivotTables(1).PivotSelect "前年比"   Selection.NumberFormat = "0.00%" End Sub "前年比"固定ではなく、任意のItem名で処理したい場合は以下のような感じ。 (Item名のセルを選択して実行します) Sub macro2()   On Error GoTo errHndlr   With Selection.Item(1)     .PivotTable.PivotSelect .Value   End With   Selection.NumberFormat = "0.00%" errHndlr:   With Err()     If .Number <> 0 Then       MsgBox .Number & " : " & .Description     End If   End With End Sub ▽こちらのサイトも参考になると思います。 http://pvttbl.blog23.fc2.com/blog-entry-37.html

anmo77
質問者

お礼

回答ありがとうございます。 PivotSelectを使うのですね。なるほど、ポン!でした。 元データは毎朝自動的にダウンロードして、エクセルを開くとピボットが更新される様な運用をしているので、手動はありえなくて困っていたところでした。 ご紹介頂いたサイトも参考にさせて頂きます。

関連するQ&A