VBA中AutoFilter的使用方法

VBA中AutoFilter的使用方法


AutoFilter(Field,Criterial1,Operator,Criteria2,VisibleDropDown)

(1)参数field:参数Field,指定想要基于筛选的字段的整数偏移量。从列表的左侧算起,最左侧的字段是字段一

(2)参数Criterial1:指定判断条件(为字符串)

(3)参数Operator,指定筛选的类型

  • xlAnd:值为1。Criteria1和Criteria2的逻辑与。
  • xlOr:值2。Criteria1或Criteria2的逻辑或。
  • xlTop10Items:值3。显示最大值的项(在Criteria1中指定项目数)。
  • xlBottom10Items:值4。显示最小值的项(在Criteria1中指定项目数)。
  • xlTop10Percent:值5。显示最大值的项(在Criteria1中指定百分比)。
  • xlBottom10Percent:值6。显示最小值的项(在Criteria1中指定百分比)。
  • xlFilterValues:值7。筛选值。
  • xlFilterCellColor:值8。单元格的颜色。
  • xlFilterFontColor:值9。字体颜色。
  • xlFilterIcon:值10。筛选图标。
  • xlFilterDynamic:值11。动态筛选。

(4)参数Criteria2:指定第二个判断条件(字符串),使用Criterial1和Operator构建复合判断条件。

(5)参数VisibleDropDown:设置为True则显示所筛选字段的自动筛选下拉箭头;设置为False则隐藏所筛选字段的自动筛选下拉箭头。默认为True。

举例

  • 需求:

1 删除CDE列

2 将金额放在日期列的后面

3 筛选数量大于200的数据

在这里插入图片描述

Sub 录制宏()
'
' 录制宏 宏
'
' 快捷键: Ctrl+q
'
    Columns("C:E").Select
    'C列和E列被选择
    
    Selection.Delete Shift:=xlToLeft
    '选择的列被删除,参数向左移动
    
    Columns("G:G").Select
    'G列被选择
    
    Selection.Cut
    '选择的列被剪切
    
    Columns("B:B").Select
    'B列被选择
    
    Selection.Insert Shift:=xlToRight
    '选择的列被插入,参数右移
    
    Range("A1:H1").Select
    'A1到H1范围被选择
    
    Selection.AutoFilter
    '被选择的列筛选
    
    ActiveSheet.Range("$A$1:$H$114").AutoFilter Field:=7, Criteria1:=">200", Operator:=xlAnd
    '活动的表格范围(固定的A1到H114),自动筛选第七列,条件1为大于200.

End Sub
  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值