2

我有一组需要清除的切片器,不包括需要保留为所选内容的 2 个切片器。我目前使用的代码允许我排除 1 个切片器,但我找不到排除第 2 个切片器的正确方法。下面的代码是我正在使用的:

Sub Clearslcr()
    Dim Slcr As SlicerCache
    Dim SL As Slicer
    For Each Slcr In ActiveWorkbook.SlicerCaches
        For Each SL In Slcr.Slicers
            If SL.Parent.Name = ActiveSheet.Name Then
                If InStr(SL.Name, "Measure") = False Then
                    Slcr.ClearManualFilter
                End If
            End If
        Next SL
    Next Slcr
End Sub

有人可以建议如何使它排除两者吗?我试图排除“测量”和“当前与比较”,似乎可以做其中之一!(刚开始使用 VBA,所以边走边学!)

4

1 回答 1

0

如果您想从这样for-loop的样本中排除 2 个变量,可以使用:

Sub TestMe()

    Dim bar, foo
    bar = Array(1, 2, 3, 4, 5)

    For Each foo In bar
        If Not (foo = 1) And Not (foo = 2) Then
            Debug.Print foo
        End If
    Next foo

End Sub

它打印3,4,5,1并且2被忽略。

于 2018-05-04T13:21:33.617 回答