搞定Excel里的年龄段筛选,这事儿吧,说难不难,说简单,也总有人在坑里爬不出来。老板下午三点开会,两点五十给你甩过来一个几千人的员工花名册,就一句冷冰冰的话:“小王,五分钟,把80后、90后、00后的人数给我统计出来。” 你怎么办?头皮发麻,心里一万头羊驼奔腾而过。一个个去数?那下午的会你别开了,直接准备明天的交接工作吧。
所以,这活儿到底怎么干?别慌,这根本不是什么高深莫测的技术,就是几层窗户纸。今天我给你捅破了,保你以后再遇到这种事,云淡风轻,甚至还能反问老板一句:“要不要再给您按星座分个组?”
咱们从最笨,但是最直观的方法说起。
方法一:硬核辅助列 + IF函数“俄罗斯套娃”
这个方法,我称之为“体力活里的技术流”。核心思想就是,我不直接在原始数据上动刀子,我旁边加一列,专门用来“贴标签”。这一列,就是我们的 辅助列。
想象一下,你有一列身份证号,或者干脆就是出生日期,格式还算规整,比如在B列。你就在C列的C1单元格里写上“年龄分代”。然后,从C2单元格开始,请出我们Excel里的老朋友——IF函数。
IF函数这东西,就像个势利眼的门卫,你给它一个条件,符合的走这边,不符合的走那边。但一个门卫只能分两拨人,我们要分80后、90后、00后,甚至70后,这怎么办?简单,多雇几个门卫,让他们排成一队,一个不行下一个上。这就是所谓的“IF函数嵌套”,我更喜欢叫它“俄罗斯套娃”。
在C2单元格,你可以开始念咒语了。咱们假设B2是出生日期。
=IF(B2>=DATE(2000,1,1), "00后", IF(B2>=DATE(1990,1,1), "90后", IF(B2>=DATE(1980,1,1), "80后", "70后及以前")))
我们来翻译翻译这段咒语是什么意思:
-
IF(B2>=DATE(2000,1,1), "00后", ...)- 先问第一个门卫:这个人的生日(B2)是不是2000年1月1日或之后?
- 如果是,门卫直接给你贴个“00后”的标签,后面的门卫就不用看了,直接放行。
- 如果不是,那就交给下一个门卫处理。
-
... IF(B2>=DATE(1990,1,1), "90后", ...)- 第二个门卫接手。既然能到我这,说明肯定不是00后了。那我再问:生日是不是1990年1月1日或之后?
- 如果是,贴上“90后”标签,走你。
- 如果还不是,得,继续往后走。
-
... IF(B2>=DATE(1980,1,1), "80后", "70后及以前")- 第三个门卫上场。他问:生日是不是1980年1月1日或之后?
- 是,那就是“80后”。
- 到这儿还不是?那行了,不用再问了,剩下的统统归为“70后及以前”。
看到没?这个逻辑是 从新到旧 或者 从大到小,一层一层地筛选下去。写完这个公式,鼠标对准C2单元格右下角那个小黑点,变成十字,双击!瞬间,几千行的数据,标签全给你贴得明明白白。
然后呢?在数据选项卡里点一下“筛选”,C列那个小三角一点,想看哪个年代的,勾上就行。想统计人数?用COUNTIF函数,或者直接筛选后看左下角的状态栏计数,都行。
这个方法的优点是直观,好理解。缺点嘛,如果你的分段特别多,比如要分“95后”“85前”这种,那个IF公式会长得像一条贪吃蛇,括号套括号,逗号连逗号,稍微错一个,整个世界就给你报个#VALUE!的错,让你怀疑人生。
方法二:高手的选择——VLOOKUP模糊匹配
如果说IF嵌套是小米加步枪,那 VLOOKUP 的模糊匹配,就是巡航导弹,指哪打哪,姿势还特别优雅。
这个方法需要你先做一点小小的准备工作。在表格的空白处,比如F列和G列,建立一个你的“年代定义表”。这个表很简单,就两列:
| 年代起始年份 | 标签 | | :--- | :--- | | 1980 | 80后 | | 1990 | 90后 | | 2000 | 00后 |
注意,这个表的 第一列必须是升序排列的,这是模糊匹配能正常工作的关键。
好了,准备工作完成。现在,回到你的辅助列(比如C列),在C2单元格,我们再次开始念咒语,这次的咒语短小精悍:
=VLOOKUP(YEAR(B2), $F$2:$G$4, 2, TRUE)
让我给你解剖一下这颗“巡航导弹”:
YEAR(B2):我们不直接用完整的出生日期去查,而是先用YEAR()函数把它在哪一年的给揪出来。比如1992-05-20,揪出来的就是1992。$F$2:$G$4:这就是我们刚才建立的那个“年代定义表”的范围。加了$符号是绝对引用,这样你往下拖公式的时候,这个范围不会乱跑。2:意思是,一旦在F列找到了匹配的区间,就返回这个“年代定义表”的第二列,也就是我们想要的“90后”之类的标签。TRUE:这才是灵魂!这才是整个公式的点睛之笔!VLOOKUP的最后一个参数,TRUE(或者写1,或者干脆不写,默认就是TRUE)代表 模糊匹配。
什么是 模糊匹配?它不是说随便找个差不多的。它的逻辑是:查找小于或等于查找值的最大值。
当YEAR(B2)是1992时,VLOOKUP拿着1992去F列里找。它一看,F列里有1980,1990,2000。1992比1990大,比2000小,所以小于等于1992的最大值是1990。于是,它就定位到1990这一行,然后根据你写的2,返回了G列的“90后”。
是不是感觉智商被碾压了?这个方法的好处简直不要太多:
- 公式简洁:再也不用数括号了。
- 维护性极强:将来老板心血来潮,要增加“10后”的分段,你根本不用改那个复杂的公式,只需要在你的“年代定义表”里加一行数据就行了。一劳永逸。
这个方法,绝对是那种你用了之后,同事路过你屏幕,都会忍不住“咦”一声,然后凑过来问你怎么做到的高级技巧。
方法三:终极懒人神器——数据透视表 (Pivot Table)
如果前面两种方法你都觉得还要写公式,麻烦。那么,恭喜你,接下来这个方法,让你彻底告别公式,全程鼠标点点点,B格直接拉满。这就是Excel里的大杀器——数据透视表 (Pivot Table)。
步骤如下,跟紧了:
- 选中你包含出生日期的那一整列数据,或者干脆选中整个数据表。
- 在菜单栏找到“插入” -> “数据透视表”。弹出的对话框一般不用改,直接点“确定”。Excel会为你新建一个工作表。
- 在新工作表的右侧,你会看到“数据透视表字段”的窗格。找到你的“出生日期”字段。
- 关键操作来了:把“出生日期”这个字段,用鼠标 拖动 到下方的“行”区域。
- 这时,你会看到透视表里列出了所有的出生日期,密密麻麻。别急,见证奇迹的时刻到了。
- 在透视表里那些日期的 任意一个 上,单击 鼠标右键,在弹出的菜单里找到“创建组”。
- 在“组合”对话框里,它会自动识别你的日期范围。在“步长”区域,取消选择“月”,只保留“年”。然后点确定。
Booooom! 你的数据瞬间就按年份给你聚合好了。
但这还不是最终目的,我们是要分“代”。别急,刚才只是热身。
- 再次把“出生日期”这个字段,拖动到“值”区域。你会看到它自动变成了“计数项:出生日期”。现在,你已经得到了每一年出生的人数统计了。
- 有了按年的统计,再分组就很容易了。选中那些年份(比如1980到1989),右键,“创建组”,它会生成一个“组1”,你可以手动把它改成“80后”。对90年代的年份重复此操作。
这个方法得到的是最终的统计结果,而不是给每一行打标签。它直接回答了老板的问题:“80后、90后、00后各有多少人”。整个过程行云流水,没有任何一个公式输入,充满了高级感。老板看到你三下五除二就搞出这么个漂亮的汇总表,不给你涨工资都说不过去。
总结一下,这三种方法,没有绝对的好坏,只有适不适合。
- IF嵌套 像是你刚学会骑自行车,有点晃,但能到目的地。应对简单的、一次性的任务,足够了。
- VLOOKUP模糊匹配 像是你换了辆公路车,轻便、快速、优雅。它考验你的思维方式,一旦掌握,你会爱上这种解决问题的模式。
- 数据透视表 那就是开上了汽车,甚至还是自动驾驶。它强大、高效,专门用来处理汇总、分析类的需求。
所以,下次再遇到筛选年龄段这种破事,你的武器库里已经有了三件趁手的兵器。掏出哪一件,取决于你的心情,以及你想在老板面前秀出什么样的操作。
【怎么在excel筛选年龄段】相关文章:
打印机怎么打印excel表格12-05
excel怎么把每一行12-05
excel表格怎么打印表格大小12-05
网页怎么导出excel表格数据导出12-05
微信的excel怎么发qq12-05
苹果系统mac怎么用excel表格12-05
怎么在excel筛选年龄段12-05
c 设置excel格式文件怎么打开12-05
你问我,Excel怎么登陆界面?12-05
excel下拉菜单怎么做 200712-05
pdf文件怎么转换成excel文件12-05
怎么在excel画两条斜线12-05
怎么在excel单元格插入图片12-05