Excel必学的10个函数完全掌握

掌握少数几个Excel函数,就能覆盖日常表格工作的绝大部分需求——这里讲的是怎么实际使用它们,而不只是它们叫什么名字。

SUM和AVERAGE:把基础打牢

=SUM(A1:A10)对一个单元格区域求和,=AVERAGE(A1:A10)求这些单元格的平均值。最常见的错误是在插入新数据后,选取的区域没能包含新的一行——用整列引用或用表格功能创建的命名区域,而不是固定的单元格范围,能避免公式在不知不觉中失效。

IF:基本的条件判断

=IF(条件, 条件为真时的值, 条件为假时的值) 会在满足条件时返回一个值,不满足时返回另一个值,比如 =IF(B2>=60, "及格", "不及格")。把多个IF嵌套使用,在条件不多的情况下可以应付,但很快就会变得难以阅读,这时候通常改用IFS函数或查找类函数会更合适。

VLOOKUP:从另一张表中取出匹配的数据

=VLOOKUP(查找值, 表格区域, 列号, FALSE) 会在指定区域最左边一列中查找某个值,并返回同一行中指定列的值。这里的FALSE参数很关键,它强制要求精确匹配——如果省略它(或者写成TRUE),在没有完全匹配项的情况下,可能会在不知不觉中返回错误行的数据。

COUNTIF:统计符合条件的单元格数量

=COUNTIF(区域, 条件) 用来统计一个区域中有多少单元格符合特定条件,比如 =COUNTIF(A1:A100, ">50") 或 =COUNTIF(B1:B100, "已完成"),不用建立完整的数据透视表就能快速做统计。

SUMIF:把符合条件的数值加总

=SUMIF(区域, 条件, 求和区域) 只把"区域"中满足条件的那些行,对应到"求和区域"中的数值加总起来——比如只把A列地区等于"华东"的那些行,在B列的销售额加总。

INDEX + MATCH:比VLOOKUP更灵活的替代方案

=INDEX(要返回值的区域, MATCH(查找值, 查找区域, 0)) 能实现VLOOKUP同样的功能,但既能向右查找也能向左查找,而且在插入或调整列顺序时不会出错,因为MATCH是动态定位位置,而不是像VLOOKUP那样引用一个固定的列号。

COUNTIFS和SUMIFS:按多个条件统计

=COUNTIFS(A:A, "北京", B:B, ">=100") 这样把"区域+条件"成对地连续写下去,就只会统计同时满足所有条件的行。SUMIFS的写法是 =SUMIFS(求和区域, 条件区域1, 条件1, 条件区域2, 条件2),求和区域放在最前面,这一点和SUMIF正好相反,从SUMIF改写时很容易把参数顺序弄错。多个条件之间默认是"并且"的关系,如果想统计"A或B",可以把两个SUMIFS相加。

IFERROR:让错误提示更整洁

=IFERROR(VLOOKUP(A2, 商品表, 2, FALSE), "未找到") 这样写,只有在公式出错时才显示你指定的内容,适合在要提交的表格里避免满屏的#N/A。不过它会把所有错误都藏起来,连本该修正的输入错误或引用错位也看不到了。如果只想处理#N/A,可以改用IFNA,这样其他类型的错误仍会显示出来,更容易发现问题的真正原因。

绝对引用($):复制公式时锁定不该移动的位置

把公式向下复制时,单元格引用通常会跟着移动。如果希望始终指向同一个位置,比如存放税率的单元格,就要在列和行前面加$,写成$B$1。编辑公式时选中引用部分按F4键,可以在几种锁定方式之间切换(不同设备上的快捷键可能不同)。VLOOKUP的查找区域也经常写成$A$2:$D$100这样固定下来;如果忘了锁定,越往下的行区域偏移得越多,中途开始出现#N/A就是典型表现。

XLOOKUP:更新的查找函数

=XLOOKUP(查找值, 查找区域, 返回区域, "未找到") 可在Microsoft 365和Excel 2021及更高版本中使用。它默认就是精确匹配,不用数列号,还能返回左边的列,一次性解决了VLOOKUP和INDEX+MATCH各自的短板。但如果对方还在用较旧的Excel版本,打开文件时可能会显示#NAME?。如果同事或客户的软件版本参差不齐,继续使用VLOOKUP或INDEX+MATCH会更稳妥。

TRIM和VALUE:修复看不见的数据差异

VLOOKUP或COUNTIF提示"明明有的数据却找不到"时,原因往往是肉眼看不出来的差别。比如末尾多了一个空格,可以用TRIM清除;全角空格TRIM有时处理不了,需要用SUBSTITUTE替换掉。另外,靠左显示的数字通常是以文本形式保存的,不会被计入求和,可以用VALUE函数或者乘以1把它们转换成真正的数值。

为什么VLOOKUP出错的频率比人们想象的更高

VLOOKUP是通过"位置编号"在查找区域内引用某一列的,所以只要在这个区域内的任何位置插入或删除一列,所有VLOOKUP公式的结果都会跟着偏移,而且不会有任何错误提示——公式依然会正常运行,只是悄悄地返回了错误的答案。这个特性正是"我的VLOOKUP昨天还好好的"这类问题最常见的原因,也是在规模更大、编辑更频繁的表格中,人们经常推荐使用INDEX+MATCH的主要原因。

真正的威力体现在函数组合使用的时候

在实际工作中,这些函数很少被完全孤立地使用——把COUNTIF嵌套在IF里面,或者把SUMIF的结果和VLOOKUP结合起来,是熟悉每个函数之后很常见的用法。学会每个函数的语法只是第一步,学会把两三个函数组合起来回答一个具体问题,才是真正能在日常工作中节省时间的关键。

学习顺序和练习方法

新手可以先从SUM和AVERAGE入手熟悉区域选取,再学习IF的条件判断,然后用COUNTIF、SUMIF做简单统计,最后再进入VLOOKUP(有余力的话继续学INDEX+MATCH或XLOOKUP)。练习时建议用自己熟悉的数据,比如自己的记账表或排班表,因为你清楚结果应该是什么,更容易发现公式写错了。每个函数先在十行左右的小表里试一遍,结果符合预期后再套用到大表,可以减少很多返工。

把表格交给别人之前的检查清单

在提交或转交表格前,建议检查四件事:求和区域是否包含了最新添加的行,该锁定的引用是否加了$,VLOOKUP的最后一个参数是否为FALSE,以及有没有以文本形式保存的数字混在里面。另外,用计算器或另一种方法对合计值做一次验算,能防住大部分"区域错位"这类悄无声息的错误。还要注意,部分函数在较旧版本中不能使用,如果不清楚对方的环境,尽量少用IFS、XLOOKUP等较新的函数。

常见问题

VLOOKUP和INDEX+MATCH在实际使用中有什么区别?

VLOOKUP写起来更简单,对于规模小、结构稳定的表格已经够用;而INDEX+MATCH通常更稳健,适合规模更大或经常被编辑的文件,因为它不会因为插入列而出错,而且可以向左右任意方向查找,而不只是从查找列往右查找。

为什么我的公式会显示#N/A或#VALUE!这样的错误?

#N/A通常意味着查找类函数没能找到匹配的值(常见原因包括多余的空格、数据类型不一致,或者单纯的拼写错误);#VALUE!通常意味着公式试图对一个实际上不是数字的内容做运算,比如被格式化成看起来像数字的文本。

绝对引用应该在什么时候用?

当你把公式复制到别处,仍希望它指向同一个单元格时就要用。例如多行计算都要引用同一个税率单元格,或者要固定VLOOKUP的查找区域。如果忘了加$,复制后引用会错位,造成不容易发现的计算错误。

我应该把VLOOKUP换成XLOOKUP吗?

如果大家的软件版本都支持,XLOOKUP写起来更简单、也更不容易出错,值得使用。但与使用Excel 2019及更早版本的人交换文件时,它可能无法正常运行。比较现实的做法是先确认自己和对方的版本,再决定用哪一个。

为什么我的合计和计算器算出来的不一样?

常见原因有三种:求和区域没有包含新增的行;有的数字其实是文本格式,没有被计入;还有被隐藏或被筛选掉的行被忽略了。可以先检查是否有靠左对齐的数字,这通常是文本格式的信号。