1.判断工作表是否处于自动筛选模式
取消自动筛选
Sheets("sheet1").AutoFilterMode = False '注意这里对象是sheet, 不需要sheet中的具体区域,比如[a1:c1]之类
取消高级筛选:
If Sheets("sheet1").FilterMode = True Then Sheets("sheet1").ShowAllData
检测工作表是否处于自动筛选模式,如是则去掉自动筛选,代码如下:
If sht1.AutoFilterMode = True Then .Range("A1").AutoFilter
ActiveSheet.ShowAllData
2.设置筛选
为工作表设置自动筛选的vba代码为 Selection.AutoFilter,但要注意筛选位置在当前单元格处。
所以要注意,加自动筛选前,现将单元格定位到字段标题处代码(有的工作表筛选需要在第二行或其他行)
3.指定筛选条件
录制出的宏不是不等于,而是等于,无法排除某一个
Excel原生的筛选“自定义筛选-不等于”功能是难以支持的
“Operator:=xlFilterValues”指的是筛选后要保留哪些值,所以使用 不等于时不能使用该Operator
排除空的单元格,Criterial:="<>"
标签:vba,单元格,sheet1,Sheets,自动,筛选 From: https://www.cnblogs.com/shizunatsu/p/17412562.html