web-dev-qa-db-ja.com

Excel:名前を変更したすべてのピボットテーブルラベルをクリアする方法

Excelでピボットテーブルを使用する場合、特定のピボットテーブルラベルに新しい名前を上書きすると便利な場合があります。

ラベルを付け直したアイテムのリストが長い場合、元のラベルが何であったかがわからなくなる可能性があります。元のラベルを復元するために私が見つけた唯一の方法は、ソースデータに移動し、すべての元のラベルを掘り出し、ピボットテーブルラベルを一度に1つずつ戻すことです。

名前を変更したラベルは50以上あります。これは退屈な作業です。

特定のフィールドの名前が変更されたすべてのピボットテーブルラベルを一度にクリアする方法はありますか?

編集:私はExcel 2010を使用していますが、それ以降のバージョンで利用可能なメソッドにも興味があります。

6
Andi Mohr
  1. ソースの列ヘッダー/名前を変更します
  2. ピボットを更新します。これにより、すべての強制ラベルとドロップフィールドがピボットから削除されます。
  3. 列名を元の名前に戻します
  4. ピボットを再度更新
  5. フィールドをピボットに戻します。
10
Madball73

このマクロは、ブックのすべてのピボットテーブルの行ラベルと列ラベルからすべてのキャプションを削除します。これはPowerPivotテーブルでは機能しません。

Sub FixPivotItemCaptions()
Dim pi As PivotItem
Dim pt As PivotTable
Dim wb As Workbook
Dim ws As Worksheet
Dim pf As PivotField

Set wb = ActiveWorkbook

Application.ScreenUpdating = False
For Each ws In wb.Worksheets
    For Each pt In ws.PivotTables
        For Each pf In pt.PivotFields
            For Each pi In pf.PivotItems
                pi.Caption = pi.SourceName
            Next
        Next
    Next
Next
Application.ScreenUpdating = True
End Sub
2
Marcus Poetting

問題の列がすでにいくつかのピボットにあり、列を再度追加するのに多少の労力や問題がある場合、またはたとえば一部のレイアウトを破壊するのが不安な場合は、次の簡単な方法を提案します。

  • ピボットの任意の場所を右クリックし、[ピボットテーブルテーブルオプション]を選択し、[データ]タブを選択して、[フィールドごとに保持するアイテムの数]を[なし]に変更します。
  • ピボットを更新する

これで、古いフィールドラベルアイテム(「エイリアス」)が忘れられました。おそらく、データエイリアスの名前を変更して、必要な場所に戻し、「フィールドごとに保持するアイテムの数」を自動的に元に戻します。

0
Paschi