Vba 清除动力枢轴切片机

Vba 清除动力枢轴切片机,vba,excel,powerpivot,slicers,Vba,Excel,Powerpivot,Slicers,有人知道清除工作簿中切片器的好方法吗。 我有一张有很多切片机的工作表,我想用一个按钮来清除它们 我写了一点VBA来做它,但是有点慢: Sub ClearSlicers() Dim cache As SlicerCache For Each cache In ActiveWorkbook.SlicerCaches cache.ClearManualFilter Next cache End Sub 只是想知道你有没有更漂亮的 谢谢 John这将清除工作表中的所

有人知道清除工作簿中切片器的好方法吗。 我有一张有很多切片机的工作表,我想用一个按钮来清除它们

我写了一点VBA来做它,但是有点慢:

Sub ClearSlicers()
  Dim cache As SlicerCache

  For Each cache In ActiveWorkbook.SlicerCaches
           cache.ClearManualFilter
  Next cache
End Sub
只是想知道你有没有更漂亮的

谢谢
John

这将清除工作表中的所有切片器

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

该代码不起作用,因为它们是PowerPivot切片器而不是Pivot表。我写的代码可以工作,但需要大约25秒才能完成。我认为这是因为在清除每个过滤器之后,数据模型正在刷新。你知道停止刷新的方法吗?我快疯了;-)