[[20220903154119]] 『ピポットテーブルのフィルターのかけ方について』(ヤスオ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ピポットテーブルのフィルターのかけ方について』(ヤスオ)

質問です。
ピポットテーブルにて、フィルターをかけたいのですが
下記状況・コードでフィルターをかけようとすると
何もフィルターされず、エラーも無く通ってしまいます。
どこを修正したら良いのか、どなたかお教えいただけたらと思います。

よろしくお願いいたします。

ピポットテーブルについて
・シート名:ピボット
・ピポットテーブル名:ピポットテーブル1
・ピポットテーブル列:「メニュー名」「値」の二つ
・ピポットテーブル行:「部門」「氏名」の二つ
・ピポットテーブル値:「合計金額」「個数」の二つ

・フィルターをかけたいフィールド:「部門」
→var_Bumonという変数に入っている値の完全一致でフィルター

・コード
ThisWorkbook.Worksheets("ピボット").PivotTables("ピボットテーブル1").ClearAllFilters
ThisWorkbook.Worksheets("ピボット").PivotTables("ピボットテーブル1").PivotFields("部門").PivotFilters.Add2 xlCaptionEquals, , var_Bumon

※ var_Bumonに入っているデータは必ず「部門」行に設定されている旨は確認済みです。
※ ClearAllFiltersでは、きちんとフィルター解除されてます。
 空白が入っている等もありません。

< 使用 Excel:Office365、使用 OS:Windows10 >


対象アイテム以外を非表示
 Sub test()
    Dim dic As Object
    Dim pvt As PivotTable
    Dim pvi As PivotItem

    Set dic = CreateObject("scripting.dictionary")
    dic("〇〇") = True
    dic("△△") = True

    Set pvt = ThisWorkbook.Worksheets("ピボット").PivotTables("ピボットテーブル1")
    pvt.ClearAllFilters
    For Each pvi In pvt.PivotFields("部門").PivotItems
        pvi.Visible = dic.exists(pvi.Name)
    Next

 End Sub

(マナ) 2022/09/03(土) 19:28


Using arrays to Filter Pivot table labels
https://stackoverflow.com/questions/48585666/using-arrays-to-filter-pivot-table-labels

最後に「データモデルに追加する」で云々というコメントがありますが、
わたしのPCでは確認できないので、試していません。

(マナ) 2022/09/03(土) 21:42


マナ様
記載いただいたコードで、無事解決できました!
ありがとうございました 。
(ヤスオ) 2022/09/04(日) 03:58

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.