GOOGLE

EP12. “求和与查找函数速查”

首页 Google 工具 Sheets · EP12
约 8 分钟· #EP12#Sheets
🔒 登录后可标记已读
  • Google Sheets 最常用的求和类函数 SUM、SUMIF、SUMIFS,以及查找函数 VLOOKUP
  • SUM 在 EP03 已经介绍过基本用法,这篇简短带过,重点放在 SUMIF/SUMIFS 的条件参数写法,以及 VLOOKUP 的四个参数
  • 前置知识:先看过 EP03 的公式基础、EP10 的条件写法(SUMIF/SUMIFS 的条件参数格式跟 IF/COUNTIF 一致)
  • 适合报表汇总(按分店/按类别加总)、以及按编号/名称查另一张表数据(查薪资、查价格)这类场景

重点内容


SUM:基本加总(EP03 已介绍,快速复习)

以下面这份各分店月营业额表为例(A2:C9):

分店月份营业额(RM)
KLJan15000
PenangJan9800
JBJan7600
KLFeb16200
PenangFeb10500
JBFeb8100
KLMar14800
PenangMar11200
函数语法用途例子
SUM=SUM(value1, [value2, ...])把范围内的数字全部加总=SUM(C2:C9)

=SUM(C2:C9) 把 8 行营业额全部加起来,结果是 RM93,200


SUMIF / SUMIFS:按条件加总

函数语法用途例子
SUMIF=SUMIF(range, criterion, [sum_range])加一个条件,只加总符合条件的部分=SUMIF(A2:A9,"KL",C2:C9)
SUMIFS=SUMIFS(sum_range, criteria_range1, criterion1, [criteria_range2, ...], ...)加多个条件(AND 关系),全部满足才纳入加总=SUMIFS(C2:C9,A2:A9,"KL",C2:C9,">=15000")

SUMIF 例子=SUMIF(A2:A9,"KL",C2:C9) 只加总分店是 "KL" 的营业额——三个月分别是 15000、16200、14800,加总结果是 RM46,000

📌 SUMIF 的三个参数顺序是 (条件范围, 条件, 要加总的范围)——条件范围在最前面,要加总的范围放最后,跟 AVERAGEIF 的参数顺序逻辑一致。

SUMIFS 例子=SUMIFS(C2:C9,A2:A9,"KL",C2:C9,">=15000") 再加一个条件,只加总 KL 分店而且营业额 >=15000 的月份——Jan(15000) 和 Feb(16200) 符合,Mar(14800) 不满足 >=15000 被排除,加总结果是 RM31,200

📌 SUMIFS 跟 SUMIF 参数顺序不一样——SUMIFS 把要加总的范围(sum_range)放在最前面,后面才接一组一组的「条件范围, 条件」;SUMIF 则是要加总的范围放最后。两个函数名字很像,参数顺序却相反,套用前一定要确认自己在用哪一个。


VLOOKUP:按编号/名称查另一张表的数据

函数语法用途例子
VLOOKUP=VLOOKUP(search_key, range, index, [is_sorted])用一个值(编号/名称)去另一张表最左栏找,回传同一行指定栏位的值=VLOOKUP(H2, F2:G6, 2, FALSE)

四个参数分别是:

  1. search_key:要拿去查找的值,通常是引用一个单元格,比如 H2 里输入的员工编号
  2. range:查找用的整个表格范围,第一栏(最左栏)一定要是拿来比对 search_key 的那一栏
  3. index:要回传的数据在第几栏,从 range 最左栏开始数,最左栏是第 1 栏
  4. [is_sorted]:range 的第一栏资料有没有先排序好——TRUE/1 代表已排序(允许用估计值近似查找),FALSE/0 代表没排序(要求完全一致才算找到)。几乎所有场景都建议直接写 FALSE,除非确定数据已经严格由小到大排序,不然用 TRUE 容易查到不精确的结果

例子一:按员工编号查薪资

薪资表(F2:G6):

员工编号薪资(RM)
E0013500
E0024200
E0033800
E0045000
E0054600

在 H2 输入要查的员工编号 "E003",公式 =VLOOKUP(H2, F2:G6, 2, FALSE)——search_key 是 H2("E003"),range 是 F2:G6,index 是 2(薪资栏是范围里第 2 栏),is_sorted 用 FALSE。结果回传 RM3,800

例子二:按产品名称查价格

价格表(J2:K6):

产品价格(RM)
钢笔5
笔记本12
文件夹8
订书机15
胶带4

在 L2 输入要查的产品名称 "文件夹",公式 =VLOOKUP(L2, J2:K6, 2, FALSE)——同样 index 是 2(价格栏是第 2 栏),结果回传 RM8

常见错误

  • ❌ VLOOKUP 的 range 没有把“用来比对的那一栏”放在最左边——VLOOKUP 只能往右查,想找的数据如果在比对栏的左边,一定会查找失败或查到错的结果,这种情况要改用 INDEX MATCH 或调整表格栏位顺序
  • ❌ is_sorted 图方便都写 TRUE 或干脆留空——不确定数据有没有严格排序时用 TRUE,容易在找不到完全相符的值时回传一个看起来正常、实际上不对的估计值,比明显报错更难 debug;不确定就写 FALSE
  • ❌ SUMIF 和 SUMIFS 的参数顺序搞混——SUMIF 要加总的范围放最后,SUMIFS 要加总的范围放最前面,两个函数名字长得很像,直接照抄容易调换顺序
  • ❌ SUMIFS 的条件之间以为是 OR(满足其中一个就算)——SUMIFS 所有条件都是 AND 关系,要全部同时满足才会被纳入加总,想要 OR 逻辑(满足任一条件)需要分开写多个 SUMIF 再相加

Sources

Blog / Website:

  1. GS SUM
  2. GS SUMIF
  3. GS SUMIFS
  4. GS VLOOKUP