Google Sheets 中的 SUMIF 和 SUMIFS 函数有助于根据特定条件分析、组织和汇总数据。当单元格值满足设定要求时,这些公式会对它们进行求和。
我最近为一家希望深入挖掘流量报告的网络公司做了类似工作。我从分析软件中导出了按渠道划分的每日网站流量数据,导入 Google Sheets 并保存为“Daily Traffic”。
随后我对数据进行了聚合:每天每个渠道一行。该公司约有九个流量来源,从1月1日到3月28日(共87天),电子表格中包含748行渠道流量总计数据,手动处理过于庞大。
数据导入产生了748行渠道流量总计数据。
使用示例数据,让我们看看 SUMIF 和 SUMIFS 公式如何帮助分析网站流量,具体包括:
- 在整个87天期间,每个渠道分别产生了多少流量?
- 每个渠道每月分别产生了多少流量?
SUMIF
导入的流量信息包含三列:日期、渠道以及该渠道当天的独立访问次数。
源数据在工作表中包含三列:Date、Channel 和 Site Traffic。
我的第一个任务是弄清楚每个渠道在整整87天内分别产生了多少流量。首先,我创建了一个名为“Total Traffic by Channel”的工作表,其中包含两列:“Channel”和“Total Traffic”。
新增的工作表“按渠道划分的总流量”包含了整个期间各渠道的流量总计。
我使用了 SUMIF 公式来获取整个日期范围内各渠道的总流量。该公式接受两个或三个参数。双参数版本包括“范围”和“条件”:
=SUMIF(range, criterion)
在这种情况下,范围是公式查找条件和求和单元格的位置。本例中需使用三参数版本,增加了一个“求和范围”。当匹配条件时,Google Sheets 会在该范围内查找,求和范围代表需要汇总的单元格:
=SUMIF(range, criterion, sum range)
我现在将使用该公式获取来自联盟渠道的流量。当我开始在公式栏中输入“=SUMIF”时,Google Sheets 提供了选择 SUMIF 公式的选项。
即使在输入完成之前,Google Sheets 也会建议 SUMIF。
因为选择了建议的 SUMIF 公式,Google Sheets 显示了指南,可在工作簿中导航并根据需要从“每日流量”工作表中选择列。
选择建议的 SUMIF 函数简化了公式创建过程。
我导航到“每日流量”工作表并选择 B 列。接下来,我需要定义条件,即单词“Affiliate”。由于在新工作表“按渠道划分的总流量”中已有该单词,可以使用单元格引用 A3。
单击 A3 单元格会将其值“Affiliate”作为条件添加到 SUMIF 公式中。
最后,导航回 Daily Traffic 工作表并选择 C 列作为求和范围。如果 B 列匹配条件“Affiliate”,则同一行中 C 列的值将加到总数中。
如果 B 列匹配条件“Affiliate”,则同一行中 C 列的值将加到总数中。
这是完成的公式:
=SUMIF('Daily Traffic'!B:B,A3,'Daily Traffic'!C:C)
就这样,我们知道联盟渠道在1月1日至3月28日期间带来了53,875次网站访问。
SUMIF 公式生效了。联盟渠道在1月1日至3月28日期间带来了53,875次访问。
可以抓住此单元格的右下角并将公式向下拖动,以获取每个剩余渠道的总计。
将单元格的公式沿列向下拖动,即可填充所有其他渠道的流量总计。
“Paid”(即广告)渠道产生了大部分流量(3,038,521次访问),这在电子商务网站中很常见。
SUMIFS
SUMIFS 函数与 SUMIF 类似,但允许多个条件。此功能有助于回答第二个问题:“每个渠道每月产生多少流量?”
SUMIFS 的参数顺序略有不同:
=SUMIFS(sum range, criterion range, criterion)
通过添加条件范围和条件的配对,可以实现近乎无限多的筛选条件:
=SUMIFS(sum range, criterion range 1, criterion 1, criterion range 2, criterion 2)
我创建了另一个名为“按渠道划分的月度流量”的工作表,其中行表示渠道,列表示月份。
SUMIFS 函数从“按渠道划分的月度流量”工作表中获取每月的流量总计。
我以与 SUMIF 函数相同的方式处理了 SUMIFS 函数。由于它可以包含多个条件,SUMIFS 公式可能会变得很长。最终,我得到了2022年1月联盟渠道的完整公式:
=SUMIFS('Daily Traffic'!C:C,'Daily Traffic'!B:B,A2,'Daily Traffic'!A:A,">=2022-01-01",'Daily Traffic'!A:A,"<=2022-01-31")
由于条件众多,SUMIFS 公式可能会变得很长。
让我们分解这个公式。第一个参数是求和范围,即“每日流量”工作表中的 C 列,它包含实际的流量数据:
=SUMIFS('Daily Traffic'!C:C,
接下来的两个以逗号分隔的参数是第一个条件范围和第一个条件:
'Daily Traffic'!B:B,A2
“每日流量”工作表中的 B 列(公式中为 ‘Daily Traffic’!B:B)是渠道列表。单元格 A2 包含渠道名称“Affiliate”。使用单元格引用而非直接输入“affiliate”,使得可以将公式向下拖动并填充其他渠道。
接下来的一对条件范围和条件创建了一个日期范围。“每日流量”工作表的 A 列保存日期。条件 “>=2022-01-01” 指定日期大于或等于2022年1月1日:
'Daily Traffic'!A:A,">=2022-01-01"
我将日期作为文本 “>=2022-01-01” 包含在内,因为 Google Sheets 会识别这种格式。另一种书写方式是:“>=”&date(2022,1,1),两者都能正常工作。
我可以将公式复制并粘贴到每个渠道的日期范围内,除此之外任务已完成。SUMIFS 函数使整个过程相对简单,现在已知每个渠道产生的总月度流量。
使用 SUMIFS 函数按渠道获取月度总计非常简单。

