广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    Excel:用vba高级筛选做超级查询器

    来源:网络收集  点击:  时间:2024-03-06
    【导读】:
    高级筛选之所以被遗忘,是因为用起来实在太不方便了,可是用到vba里的话,那简直就是初学者的福音啊。Range.AdvancedFilter(Action AsXlFilterAction, , , )这是高级筛选的语法方法/步骤1/9分步阅读

    先来看一下数据源和设置吧!

    2/9

    执行筛选按钮指定了宏(右键,指定宏,选对相应的名称就行)

    来看下这一行代码能有多强大

    3/9

    接下来请看测试动画吧

    4/9

    动画片看了,代码也这么少,应该能学会吧,还是先来个解释吧。

    Range.AdvancedFilter(Action AsXlFilterAction, , , )这是高级筛选的语法

    Range是要使用高级筛选的数据区域我用的是Sheet1.Range(A:G) 翻译成白话就是筛选序时薄这张工作表 的a:g列里的数据

    Action:是指筛选结果显示方式 我使用的是xlFilterCopy表示 将结果复制出来

    CriteriaRange;是筛选条件区域 我使用的是Range(k1:k2)

    CopyToRange:是把结果复制到那里,我用的是Range(A3:G3)

    Unique:是否筛选不重复记录,这里我没做设置,意思是提取所有记录

    好啦,大致意思理解了,那再来详细说一下里面的“坑”吧。

    5/9

    第一坑:条件区域

    条件K2单元格不使用公式的话,k1单元格字段名必须要指定,使用了公式就不能指定了。

    来,从动画片里看区别吧。

    6/9

    第二坑:结果区域

    结果区域中字段名必须与数据源中字段名一致,字段顺序可与数据源中不一致。

    也就是说,你可以只要其中几个字段,代码中结果区域大小也要做相应的调整哟。

    接着看一下这动画片吧:

    结果区域中字段名不存在会报错的

    7/9

    怎么样,用vba来筛选数据香不香,就这么一行代码就能实现这么666的功能。

    有vba相助,使用高级筛选的话,它的功能可以强大到让你无法相像

    比如我想看一级科目是现金或者是包含存款二字的信息,只需要做简单的修改就可以了。

    接着看动画片

    8/9

    看到这里,有没有在想,如果增加了条件,能不修改代码直接就能用吗?

    这想法对vba来说也不是事儿啊,不过今天就不讲这个了,还是来讲一下条件规则吧。

    高级筛选中 同一列里的条件是 或(或者)(or函数功能)动画片03已经演示了,同一行里的条件是 且(并且)(and函数功能)

    再来看个同一行的效果吧。

    这的需求是 一级科目是 现金 并且借方金额大于0给我筛选出来

    9/9

    个人建议

    整体操作流程如下。

    VBA高级筛选超级查询器EXCEL查询器EXCELEXCEL表格
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_264294.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-05 16:55:24  耗时:0.036
    0.0359s