VBA中的自动筛选(Autofilter):Range.AutoFilter 方法

2024-06-26 26

【分享成果,享受正能量】只有工作如山,才能享受空闲时间。当你无所事事的时候,闲着一点乐趣也没有,因为闲着就是你的工作,而且是最累的工作。休闲只有被偷走才尝起来甜甜的。

《VBA经典应用69例》是我推出的第九套课程。课程专门针对初中级学员在学习VBA过程中可能遇到的与“实战”相关的案例进行“战术总结”,以便大家能够运用得好。本教程的目的是要求大家在实际工作中熟练使用VBA。本套课程共三册,69个专题。今天的内容是教程4:VBA中的自动筛选:RangeAutoFilter方法。

在4VBA中使用自动筛选

大家好,我们的专题将讲解VBA中的自动筛选(Autofilter)一般我们在学习VBA之前都知道Excel的使用。在Excel工作表中,我们可以方便地使用“数据”菜单中的“筛选”功能按照标准操作完成各种筛选,处理各种信息。我们这里所说的是利用VBA来完成自动化筛选。

对于应用程序来说,可以使用“过滤器”功能从小数据集中过滤出所需的信息。但是,如果您想根据多个标准和条件过滤大量数据,使用VBA自动过滤功能会更容易。它可以节省您大量的时间和精力。例如,假设您想要过滤下拉列表中的某些信息(基于多个条件),然后将结果复制/粘贴到另一个工作表中。如果手动完成,这似乎是一项非常耗时的任务。在这种情况下,VBA可以帮助您自动化该过程。

1RangeAutoFilter方法

语法表达式AutoFilter(Field,Criteria1,Operator,Criteria2,SubField,VisibleDropDown)

表达式:返回Range对象的表达式。

范围:

①可选字段Variation是相对于用作过滤器基字段的字段的整数偏移量(从列表左侧开始,最左边的字段是第一个字段)。

②Criteria1可选变化标准(字符串;例如“101”)。使用''查找空白字段,使用''查找非空白字段,使用'>

③Operator可选XlAutoFilterOperatorXlAutoFilterOperator常量指定过滤器类型。

④Criteria2可选Variant第二个条件(字符串)。与Criteria1和Operator组合形成复合过滤条件。也用作日期字段的单个条件(按日、月或年过滤)。监视用于实现和过滤数组(级别、日期)的数组。其中包括级别0-2(年、月、日),日期是筛选期内的有效日期。

⑤可选子字段变量应用条件的数据类型中的字段(例如,地理位置的“人口”字段或股票的“交易量”字段)。省略该值的目标是“(显示值)”。

⑥VisibleDropDown可选变体如果为true,将显示筛选字段上的自动筛选下拉箭头。如果为False,自动筛选器将隐藏已筛选字段的下拉箭头。默认为真。

如果省略所有参数,则该方法仅更改指定区域中自动筛选菜单的显示。如果已使用此功能,代码将删除它们。

XlAutoFilterOperator枚举值:

1)xlAnd1Criteria1和Criteria2的逻辑与

2)xlBottom10Items4显示具有最低值的项目(Criteria1中指定的项目数)

3)xlBottom10Percent6显示具有最低值的项目(Criteria1中指定的百分比

4)xlFilterCellColor8单元格颜色

5)xlFilterDynamic11动态过滤

6)xlFilterFontColor9字体颜色

7)xlFilterIcon10过滤器图标

8)xlFilterValues7个过滤器值

9)xlOr2Criteria1或Criteria2的逻辑或10)xlTop10Items3显示具有最高值的项目(Criteria1中指定的项目数)

11)xlTop10Percent5显示值最高的项目(Criteria1中指定的百分比)

【继续】

请参阅本次讲座的申请文件:Application004xlsm

我20多年的VBA实践经验全部总结在以下课程中:

【分享成果,正能量欢喜】简单的说就是一半水一半火的人生,一半是战胜荆棘,一半是急流勇退。水与火不相容,但人物创造者巧妙地将两者结合在一起,揭示了“光”的真正味道:刚与柔。生活的“安逸”,不仅需要有克服困难的能力,更需要有放手的能力。月缺时为圆,圆时为圆,人生的最终境界不是一味“进”,更不是一味“退”。。

本站文章均由用户上传或转载而来,该文章内容本站无法检测是否存在侵权,如果本文存在侵权,请联系邮箱:2287318951@qq.com告知,本站在7天内对其进行处理。

相关推荐