2016-03-22 15 views
0

誰でもブック内のスライサーをクリアする良い方法を知っていますか? 私はスライサーがたくさんあるシートを持っています。私はそれらをクリアするために一つのボタンを持っていたいと思います。電源ピボットスライサーをクリアする

私はそれをを行うにはVBAのビットを書きましたが、それは少し遅いです:

Sub ClearSlicers() 
    Dim cache As SlicerCache 

    For Each cache In ActiveWorkbook.SlicerCaches 
      cache.ClearManualFilter 
    Next cache 
End Sub 

あなたが何か少しスリッカーを持っている場合だけだろうか?

おかげ ジョン

答えて

0

これは、彼らがPowerPivotのスライサーは、テーブルを回転されないように、コードが機能しないこと

Sub test() 

Dim pt As PivotTable 
Dim cache As Slicer 

For Each pt In ActiveSheet.PivotTables 
    For Each cache In pt.Slicers 
     cache.SlicerCache.ClearAllFilters 
    Next cache 
Next pt 

End Sub 
+0

シート内のすべてのスライサーがクリアされます。私が書いたコードは動作しますが、完了までに約25秒かかります。私は、これは、各フィルタがクリアされた後でデータモデルがリフレッシュされているためだと思います。あなたはこのリフレッシュをやめる方法を知っていますか?私を夢中にさせる;-) – MartinHayes