乐于分享
好东西不私藏

5个Excel懒人函数,用过一次会上瘾

5个Excel懒人函数,用过一次会上瘾

小伙伴们好!今天给大家分享5个Excel/WPS 里的实用函数,新手也能轻松上手!

这些函数仅支持 Excel 2021 及以上版本和最新版 WPS 表格,低版本 Excel 无法使用,大家先确认自己的软件版本~

  1. 公式里带[ ]的是可选参数,可填可不填,不填就用默认值;不带[ ]的是必填参数,必须填写。
  2. 公式里所有标点符号,必须用英文半角,中文标点会直接导致公式报错。
  3. 这些函数按回车后,会自动把结果溢出到对应的行列;如果出现#SPILL!报错,是因为要填充的区域有内容,清空该区域即可恢复正常。

一、SEQUENCE 函数:一键生成连续序号

【主要功能】

自动生成连续的序号,支持单行单列或者多行多列的序号矩阵。

通用公式格式:

=SEQUENCE(要生成几行, [要生成几列], [序号从几开始], [序号每次增加多少])

参数解释:

第 1 参数(必填):要生成的序号一共占多少行
第 2 参数(可选):要生成的序号一共占多少列;不填默认只生成 1 列
第 3 参数(可选):序号的起始数字;不填默认从 1 开始
第 4 参数(可选):序号的增量(步长),比如每次 + 2 就生成奇数;不填默认每次 + 1

实用案例:单列姓名转多行多列,方便打印

场景:A 列是一长串姓名,单列太长打印一页放不下,想把它排成指定的行列数
D6 单元格输入公式,按回车即可:

=INDEX(A:A,SEQUENCE(E3,E4,2))&""

公式拆解:

  1. SEQUENCE(E3,E4,2):生成一个「E3 行、E4 列」的序号矩阵,序号从 2 开始(因为姓名从 A2 单元格开始,跳过表头 A1)
  2. INDEX(A:A, 上面生成的序号):从 A 列里提取对应行号的内容,比如序号是 2 就取 A2 的姓名,序号是 3 就取 A3 的姓名
  3. 结尾的&"":作用是让空白单元格不显示成 0,只显示空白,表格更整洁

二、SORT 函数:一键单条件排序

主要功能】

给表格按指定列一键排序,原数据保持不动,排序结果会跟着原数据自动更新。

通用公式格式:

=SORT(要排序的完整数据区域, [按第几列排序], [升序/降序], [按行/按列排序])

参数解释:

第 1 参数(必填):要排序的数据范围
第 2 参数(可选):要按照「第几列」排序,比如按第 3 列考核分排序就填 3;不填默认按第 1 列排序
第 3 参数(可选):排序规则,填1= 升序(从小到大 / 从 A 到 Z),填-1= 降序(从大到小 / 从 Z 到 A);不填默认升序
第 4 参数(可选):排序方向,填FALSE= 按列排序,填TRUE= 按行排序;不填默认按列排序

实用案例:按考核分从高到低排序

场景:A 列是姓名,B 列是部门,C 列是考核分,想一键生成按考核分从高到低排好的表格。
E2 单元格输入公式,按回车即可:

=SORT(A2:C17,3,-1)

公式拆解:

第一参数A2:C17:要排序的完整人员数据,包含姓名、部门、考核分 3 列内容
第二参数使用3:指定按第 3 列(也就是 C 列的考核分)进行排序
第三参数使用-1:指定按降序排序,实现分数从高到低排列

三、SORTBY 函数:一键多条件排序

【主要功能】

支持多组条件一键排序,比如先按部门把同部门的人排在一起,同部门里再按考核分从高到低排。

通用公式格式:

=SORTBY(要排序的完整数据区域, 第1个排序条件的列, [第1个条件的升序/降序], 第2个排序条件的列, [第2个条件的升序/降序], ...)

这个函数的排序条件是一对一对写的,每加一个排序的列,就要对应加一个升序 / 降序的参数;写在越前面的条件,排序优先级越高。

参数解释

第 1 参数(必填):要排序的完整数据区域
第 2 参数(必填):第 1 个排序条件对应的列
第 3 参数(可选):第 1 个条件的排序规则,1= 升序,-1= 降序,默认升序
第 4 参数(可选):第 2 个排序条件对应的列
第 5 参数(可选):第 2 个条件的排序规则
... 后面可以继续加更多排序条件

实用案例:先按部门升序,同部门再按考核分降序

场景:人员考核表,先把同部门的人排在一起(部门按 A-Z 升序),同部门内按考核分从高到低排列
E2 单元格输入公式,按回车即可:

=SORTBY(A2:C17,A2:A17,1,C2:C17,-1)

公式拆解

A2:C17:是要排序的完整人员数据
“A2:A17,1” 这部分是第 1 优先级排序条件,按 A 列(部门)升序排序,把同部门的人排在一起
“C2:C17,-1”这部分第 2 优先级排序条件,同部门内,按 C 列(考核分)降序排序,分数高的在前

排序条件的字段,行数必须和前面的完整数据区域行数一致,比如数据是 A2:C17,部门列就要选 A2:A17,而不能选整列 A:A,不然会出错。

四、UNIQUE 函数:一键提取不重复值

【主要功能】

从一堆数据里一键提取不重复的内容。通用公式格式:

=UNIQUE(要去重的数据源, [按行/按列去重], [只提取只出现1次的内容])

参数解释

第 1 参数(必填):要去重的数据源,可以是单列、单行,也可以是一个多行多列的区域
第 2 参数(可选):去重方向,填FALSE= 按行去重,填TRUE= 按列去重;不填默认按行去重
第 3 参数(可选):填FALSE= 提取所有不重复内容(不管出现几次,只留 1 个),填TRUE= 只提取「只出现过 1 次」的内容;不填默认 FALSE

实用案例:从值班表中提取不重复的值班人员

场景:B 列和 C 列是每天的值班人员,有大量重复名字,想提取所有值班人员,每个人名只出现 1 次。
E2 单元格输入公式,按回车即可:

=UNIQUE(B2:C8)

公式拆解:

B2:C8是值班人员所在的整个数据区域,UNIQUE 会自动去掉这个区域里重复的名字,只保留 1 个,最终生成完整的不重复值班人员名单。

五、FILTER 函数:一键按条件筛选数据

【主要功能】

按指定的条件,从表格里筛选出符合要求的所有记录。

通用公式格式:

=FILTER(要筛选的完整数据区域, 筛选条件, [找不到数据时显示的内容])

参数解释

第 1 参数(必填):要筛选的完整数据区域
第 2 参数(必填):筛选条件,条件的结果必须是true或false,而且行数要和前面的筛选数据区域行数一致
第 3 参数(可选):没有符合条件的数据时单元格显示的内容

实用案例:按指定部门,筛选该部门的所有人员记录

场景:A 列是部门,B 列是姓名,C 列是考核分,F2 单元格是要查询的部门,一键提取该部门的所有人员记录
E6 单元格输入公式,按回车即可:

=FILTER(A1:C15,A1:A15=F2,"没有记录")

公式拆解

A1:C15:是要筛选的完整数据区域,这里包含了表头,所以筛选结果也会带表头。
A1:A15=F2:是筛选条件,意思是判断 A 列的部门,和 F2 单元格一致的内容就会被筛选出来
"没有记录":如果 F2 里的部门不存在,或者没有符合条件的内容,就显示这四个字,避免出现报错代码

新手进阶技巧:支持多条件筛选

  • 同时满足多个条件:用*连接,比如筛选「销售部且考核分大于 80 分」,条件写(A1:A15=F2)*(C1:C15>80)
  • 满足其中一个条件即可:用+连接,比如筛选「销售部或行政部」,条件写(A1:A15="销售部")+(A1:A15="行政部")