Excel VBA,切片器-如何使用vba在excel切片器中从一千个项目中选择一项?

时间:2018-09-24 03:58:25

标签: excel vba slicers

让我们想象一下,我们有一个切片器,其中包含1000多个项目,并且每天都在增长。我正在寻找一种解决方案,在不滚动并找到所需项目的情况下,我只能从一千个项目中选择一项。我看到的方式就像一个切换,您可以在其中为特定项目打开/关闭。开启时-仅选中该项目;当您关闭电源时-切片器过滤器已清除。

我试图记录该宏,但是将在一千行代码中触发切片器项为True或False,鉴于列表每天都在增加,我认为这不会起作用。

感谢您的支持!

托尼

1 个答案:

答案 0 :(得分:0)

下面的代码可能有用,也可以举个例子。

Sub TestFilter()
    Const FilterCol1 = 4 '........... Your target column
    Const Criteria1 = "something" '.. Your target value
    Dim LastRow As Integer
    Dim LastCol As String

    On Error Resume Next
    ActiveSheet.ShowAllData
    On Error GoTo 0

    With ActiveSheet
        LastRow = .Range("A" & .Rows.Count).End(xlUp).row
        LastCol = Split(.Range("A1").End(xlToRight).Address, "$")(1)
        .Range("A1" & ":" & LastCol & LastRow).AutoFilter field:=FilterCol1, Criteria1:=Criteria1
    End With
End Sub