我正在尝试清除特定工作表上的所有切片器,但遇到下一个错误:
此行中的“对象变量或未设置块变量”:cache.ClearManualFilter

我的代码:

Sub Clear_all_filters()

Dim cache As SlicerCache

Set mWS = Sheets("Specific_Sheet")

For Each cache In mWS.SlicerCaches
cache.ClearManualFilter
Next cache

End Sub

最佳答案

以防万一有人仍在寻找解决方案,以下是我现在使用的代码:

Sub OnePageSlicersReset()

 Dim slcrC As SlicerCache
 Dim slcr As Slicer

 Application.ScreenUpdating = False

 For Each slcrC In ActiveWorkbook.SlicerCaches
   For Each slcr In slcrC.Slicers
      If slcr.Shape.Parent Is ActiveSheet Then
         If slcrC.FilterCleared = False Then
            slcrC.ClearManualFilter
            Exit For
         End If
      End If
   Next slcr
 Next slcrC

 Application.ScreenUpdating = True

 End Sub

关于excel - 如何清除一张纸上的所有切片器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53872237/

10-10 18:47