自动过滤器使用按钮逐个列数据

时间:2015-06-02 19:46:19

标签: excel function excel-vba filter vba

我在列中有一些过滤数据,我希望宏一次看到一个值。到目前为止,我已经达到了下面的代码,但是当我手动从列中选择一个值时,它会过滤掉。是否有可能所有值都被宏函数拾取,当我运行它时,它会逐个填充数据。

Sub Macro1() 

Columns("C:C").Select

ActiveSheet.ListObjects("Table_Query1_added_columns2").Range.AutoFilter Field _ :=3, Criteria1:="101"

ActiveSheet.ListObjects("Table_Query1_added_columns2").Range.AutoFilter Field _ :=3, Criteria1:="102"

ActiveSheet.ListObjects("Table_Query1_added_columns2").Range.AutoFilter Field _ :=3, Criteria1:="103"

End Sub

1 个答案:

答案 0 :(得分:0)

试试这个(在我的头顶)

x.Cells[0]

通过声明变量Sub Macro1() Static Filter as Integer Columns("C:C").Select if Filter = 0 then ActiveSheet.ListObjects("Table_Query1_added_columns2").Range.AutoFilter _ Field:=3, Criteria1:="102" Filter = 1 ElseIf Filter = 1 then ActiveSheet.ListObjects("Table_Query1_added_columns2").Range.AutoFilter _ Field:=3, Criteria1:="103" Filter = 2 Else ActiveSheet.ListObjects("Table_Query1_added_columns2").Range.AutoFilter _ Field:=3, Criteria1:="101" Filter = 0 End Sub ,在工作簿打开时,其值仍保持设置状态。当您第一次点击按钮时,Static的值将初始化为Filter,相应的0设置,.AutoFilter的值会增加。

下次点击该按钮时,Filter的值仍然Filter,因此将设置下一个1& .AutoFilter会再次增加。

当您再次点击该按钮时,将设置下一个Filter.AutoFilter将重置为Filter,随时可以选择第一个0条件。< / p>