excel表格如何筛选数据(EXCEL如何筛选)
以下内容整理节选自知行课单纵横职场栏目「问诊台」
时间:2016年8月21日
坐诊导师:微软特约资深Office讲师—张卓
在日常工作里, 根据工作的需求我们可能经常要从数据表里筛选一些有用的数据出来。excel中除了最常规的自动筛选功能以外,还有一种更为重要的筛选功能叫高级筛选。
01
在做高级筛选之前,可以在数据表格上方插入几行空行。
接下来,同时把整个数据表的表头也复制粘贴到空行上,这个区域就叫条件区域,然后单击数据菜单上的高级筛选命令,把高级筛功能点开后会发现上面有列表区域、条件区域。
列表区域,就是要进行筛选的那一整张数据表。真正需要了解和掌握的,是条件区域。
在表格上方插入的空行和表头就形成了一个条件区域。
条件区域的位置,肯定是要么放在整个表的最上方,要么放在整个表的最下面,或者是另外一个工作表里(sheet)里面。换句话说,不能把条件区域放在表格的右边。因为做筛选时,不满足条件的行会被隐藏。如果把条件区域摆在数据表的左右两边,条件区域就可能被隐藏,而被隐藏的条件区域是不允许的。
条件区域的表头就是数据表的表头内容,可以直接贴上去。如果筛选的条件只有产品和产地时,条件区域就只需要两个表格,即产品和产地,他们的位置不一定非要跟数据表的位置一样。但务必保证表头单元格里面的内容一定跟数据表一样,比如说数据表里面表头叫产品,那么条件区域的表头也必须写产品。
上图标明了关于条件区域另外一个非常重要的知识点: 如果把条件写在条件区域的行上时,他们之间是“与”的关系,通俗来讲叫做“并且”的关系;如果把条件写在条件区域的列上时,他们之间就是“或者”的关系。
上图中,需要找的条件是CDROM产品、产地是US, 还有HDD产品、产地是CN。只需要在条件区域写上产品是CDROM和US, 因为CDROM产品产地必须在美国,所以US必须写在CDROM后面,他们不是并列关系,而是或者的关系 ; 而HPP产品的产地必须在中国,CN就写在HDD后面,表示他们是或者的关系,这样把两行连起来看意思就是:我要查询的是CDROM产品并且产地是美国,或者HDD产品并且产地是CN。
换句话说,就是最终在高级筛选的对话框里面把列表区域和条件区域分别选中。列表区域实际上就是整个数据表,条件区域就是刚才写的那部分,条件区域一定要连表头内容一起选。
值得注意的是,高级筛选的条件区域必须满足几个条件:
第一,表头一定要跟数据表一样
第二,条件区域里的行是“与”的关系,列是“或者”的关系
那条件区域里面空的单元格表示什么呢?
实际上,条件区域里面的空单元格不是空,而是表示任何值。比如说选择CDROM产品、产地是US时,如果关于它的月份售价、销量、销售额都没有提到的话,就把它们空着,因为空表示任何值。
如果在选条件区域的时候把下面的空行也选上的话,就意味着可能要筛选的是所有产品、所有产地的所有情况,那就意味着筛选结果无效。
上面这张图片是另外一种情况。如果要筛选的条件是产品CDROM产地是US、售价“>800”这种情况,那就直接在售价那个表头下方直接写“≥800”就行。
如果要找区间的话,可以把售价这个表头再复制到后面那一列,也就是在当前这个条件的后面加一列G列,把售价这个表头复制到G列上去,然后在G列里面写上小于等于多少,这样就可以保证是一个区间,因为在一行上表示并且的关系。
比如筛选是产品CDROM产地US,售价是800-1000这个区间,可以把售价在条件区域多贴出一列,那么在第二行是与的关系,就表示CDROM产品产地是US并且800<售价<1000,这样就可以现实区间的查找。
上图相对复杂一点,要查找的是产品CDROM、售价800-1000以及1200-1500之间,这时就涉及到两个数据区间,如果不使用高级筛选而只用自动筛选的话,必然要筛选两次。
使用高级筛选的话,条件区域是产品CDROM、产地US,售价是800到1000之间,它们是“并且”的关系;1200到1500之间写在下面一行,因为这两个区间是“或“的关系, 然后大于1000、小于等于1500,因为都是同样的产品产地,所以前面也写上CDROM、US,这样就可以实现两个区间的查找。这就是用高级筛选可以一步得到的结果。
除了高级筛选以外,还可以为自己创造一个小型的数据库查询系统。
02
excel有个功能叫做宏。一提到宏,可能会首先想到要用编程、用VBA。其实,宏里有一个非常简单的功能叫做“录制宏”,不需要去了解任何编程的内容,就能做出很酷的效果。
● 位置
首先单击excel里的文件菜单,然后找到“选项”并打开,在最左边的导航栏里有“自定义功能区”,打开以后在自定义功能区的最右边有个“开发工具菜单”,把它选中。上图可以看到,被红色框圈起来的部分就是开发工具。单击“开发工具菜单”,它的最左边有一个叫“录制宏”的按钮。
● 定义
实际上,“录制宏”就是把我们的一些操作录下来,以后在执行这些操作的时候,就直接一步完成。
比如说完成一件事情需要很多步骤 , 但它是一个重复的操作,可能需要经常操作同样的步骤。那excel就提供了一个非常好的解决方案, 就是“录制宏”,可以把步骤录下来,然后一键完成。
以“高级筛选”为例。比如说有一个大的数据库,你手上有一个数据表,你每天或者每隔一段时间都要到里面去查东西, 这时怎样迅速地来创建一个数据库的查询系统呢?
根据高级筛选的规则,可以先给表格创建一个条件区域。但是, 如果把想要找的结果通过高级筛选的方式查找,一旦换了新的条件,就要把现有条件填写在条件区域里然后再去执行一次高级筛选。其实并不是那么方便。
能不能让条件区域的条件修改后,下面的查询结果就自动地更新?如果想要这种自动的转变,就可以用“录制宏”的方式。
● 操作
“录制宏”的具体操作很简单,单击“开发工具”按钮选择“录制宏”以后会弹出像上图中的一个框, 这时要给宏取一个名字,比如叫“宏1”,然后单击“确定”。单击“确定”以后,excel就处于录制的状态,那你就可以开始去把这一系列操作做完。
把所有高级筛选的操作做完以后,就直接单击上图中的“停止录制”按钮。
录制完以后要如何来使用?
比如说产品CDROM产地US,售价是800-1000,如果要更换新条件,怎么能够不用重复高级筛选而一步来完成这个操作呢?大家看下面这张图。
单击开发工具,在“录制宏”按钮的左边有一个很大的字叫“宏”。单击那个“宏”就会弹出一个宏的列表出现, 刚才录的“宏1”也会在里面显示,这时只需要用鼠标选中“宏1”,再单击对话框右边“执行”的命令。这一步的操作就可以把新条件的结果重新筛选出来。
同时,这个“宏”列表里面除了“执行”以外还有“删除”,也就是说在录制宏的某一步操作没有录好导致失败的话,单击“停止录制”后,这个“宏”里面可以把没有录制好的“宏”删除。
所以说,“录制宏”是把我们从重复的劳动中解脱出来的最好的办法。
但是执行“录制宏”的时候会遇到一些新的问题。比如说,有时当你把做好宏的表格发给同事或者老板,他们excel的菜单里连“开发工具”都没有标出来,他们就不知道宏在哪里,你也不能给他发个邮件说,使用这个表格时要先单击文件菜单,选择“选项”把“开发工具”找出来,然后在“开发工具”里面找到“宏”,再找到某个宏的名字单击“执行”。这样会更麻烦。
所以有个更好的方法来完成这个操作。
实际上在excel里面可以创建一个“搜索按钮”来帮助执行这个宏。“搜索按钮”的做法其实非常简单,在“开发工具”的菜单里面就有。请大家看下面这张图。
这时只需要单击开发工具菜单下的“插入”按钮, 在按钮里面有两个部分:“表单控件”和“Active X控件”。选择“表单控件”里的第一个图标,它就是按钮,通过这个按钮可以去指定宏。用鼠标选中这个按钮后,在表格里把它画出来。
如上图所示,把按钮画出来以后,这个按钮就在条件区域的右边。把按钮画出来时,马上就会弹出一个框叫“指定宏”。这时宏的列表出来了,就要选择这个按钮将来执行的是哪一个宏。有可能我们会录制多个宏,在我刚才的那个宏里面叫做“宏1”,所以我就先用鼠标选中“宏1”,然后单击“确定”,最后把搜索按钮的名字改成search,这时就完成了“搜索按钮”的创建。
把这些操作做完以后,要筛选新条件时,只需要把条件写在条件区域里面,直接单击右边的search按钮。因为那个按钮相当于在宏里面选择我们要的那个宏,再点击执行的操作。所以这时我们完全不需要使用任何的编程的技术也可以为自己创建一个小型的数据库查询系统。
● 注意事项
提醒一下,如果你的excel表格里面有录制宏,或者你在表格里面把高级筛选这个操作录制成宏,那么你的excel的数据表里面就包含宏了。但是excel软件有安全性,如果直接把表格单击保存再关闭,下次再打开这个表格,宏就失效了。
最好的方法是把有宏的表格录制宏以后,单击文件菜单选择“另存“,在另存里有“excel启用宏的工作簿”的命令,生成“excel启用宏的工作簿.xlsm”的格式就行。当你每次打开这个表格时,会发现上方有一个黄色的警告问你是不是启用宏,这时选择启用宏就好了,就相当于为自己创建了一个小型的数据库查询系统。
其实,“高级筛选”和“录制宏”这两个操作具有一定的通用性。也就是说,录制宏不单单可以去录制高级筛选,只要是日常工作中的那些重复劳动都可以把它录成宏,然后把它做成一个搜索按钮,接下来的操作就会很简单。
以上内容整理自知行课单纵横职场栏目问诊台环节,坐诊导师为微软特约资深Office讲师张卓老师。如需学习更多张卓老师关于EXCEL应用知识,可报名参与【知行课单】。
关注学道家塾公众号(ycxdjs),更多精品好课,优质学习资源与你共分享。