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