"(空白)"エントリのピボットテーブルの行フィールドをフィルタリングする最も効率的な方法(最小コード)を探しています。"(空白)"エントリのピボットテーブルの行フィールドをフィルタリングする最も効率的な方法
私にActiveSheet.PivotTables("PivotTable1").PivotFields("Some Field").CurrentPage = "Something"
、これは効率的であるが、PageFieldsないRowFieldsため、この唯一の作品:私は.CurrentPage法を用いて、(うまくいけば、私は正しくここで話している)PageField /レポートフィルタを設定する方法を知っています。また、私は「true」または「false」としてPivotItems.Visibleプロパティを設定するには、ループオプションを認識しています:
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Some Field")
For each PvtItm in .PivotItems
If pvtItm.Value = "(blank)" Then
PvtItm.Visible = True
Else
PvtItm.Visible = False
End If
End With
これはRowFieldsのために動作しますが、いくつかの余分な行です。私はこれを使うことができますが、もっと短い方法があれば好奇心をそそられました。また、「(空白)」の項目だけを見たいので、別の方法で設定する必要がある場合= "(空白)"を使用すると、何を使用するのかが分かります。任意の提案をいただければ幸いです!仕事をしました - あなたは>に等しいラベルフィルタと行ラベルをフィルタリングするマクロを記録する場合
おかげで、Slaiのようなものを取得します。私が気づいた唯一の事は、ピボットテーブルとフィールドに接続されたスライサーはフィルターを反映していないが、ピボットテーブル自体は良く見えるということです。 – spyder3909
Excel 2007で試してみましたので、あなたのバージョンにマクロを記録して、生成されたコードが異なるかどうか試してみることができます。 – Slai