vba 筛选

1.判断工作表是否处于自动筛选模式

 Sheets("sheet1").AutoFilterMode

值有两个,True和False

值为True 则表示当前workbook的sheet1处于自动筛选模式,值为false 则表示当前workbook的sheet1不处于自动筛选模式

 

示例:

如果工作表处于自动筛选模式,则取消自动筛选

If Sheets("sheet1").FilterMode = True

  Then .Range("A1").AutoFilter

  'ActiveSheet.ShowAllData

End If

 

2.设置筛选

为工作表设置自动筛选的vba代码为  区域.AutoFilter

 

示例:

.Range("A1:H8").AutoFilter

 

 

3.指定筛选条件

录制出的宏不是不等于,而是等于,无法排除某一个

Excel原生的筛选“自定义筛选-不等于”功能是难以支持的

Operator:=xlFilterValues”指的是筛选后要保留哪些值,所以使用 不等于时不能使用该Operator

 

排除空的单元格,Criterial:="<>"

 

ActiveSheet.Range("$A$1:$F$13").AutoFilter Field:=2, Criteria1:="C组"

 

posted @ 2023-09-15 15:39  绮丽梦境  阅读(646)  评论(0编辑  收藏  举报