Google Sheets中如何基于拆分后的文本使用SUMIF计算球队总进球数?
Google Sheets中如何基于拆分后的文本使用SUMIF计算球队总进球数?
嘿,这个需求其实挺实用的,咱们一步步来搞定它!首先得明确一下表格的单元格对应关系,方便你对应自己的表格调整:
- 第一个表格(球队总进球统计):
Team列在A列,Goal scored列在B列,Team A的行是A2,Team B是A3 - 第二个表格(比赛记录):
Home team在D列,Away team在E列,Result在F列,比赛数据从D2到F5
接下来直接上公式!在B2单元格(也就是Team A的X位置)输入下面的公式:
=SUMIF(D:D, A2, INDEX(SPLIT(F:F, "-"),,1)) + SUMIF(E:E, A2, INDEX(SPLIT(F:F, "-"),,2))
我给你拆解一下这个公式的逻辑,保证你能看懂:
SPLIT(F:F, "-"):把F列里的每个比赛结果(比如"3-1")按"-"拆分成两个独立的数值,像"3-1"就会变成{3,1}这样的数组INDEX(SPLIT(...),,1):专门提取拆分后的第一个数值,也就是主场球队的进球数SUMIF(D:D, A2, ...):筛选出所有Home team等于A2(也就是Team A)的比赛,把这些比赛里Team A作为主场的进球数全部加起来- 公式后半部分同理:
INDEX(SPLIT(...),,2)提取的是客场球队的进球数,SUMIF(E:E, A2, ...)筛选出Team A作为客场的所有比赛,把这些进球数加起来 - 最后把主场进球总和和客场进球总和相加,就是Team A的总进球数X啦!
把B2的公式下拉到B3,就能自动算出Team B的总进球数Y了。如果想让计算更高效(避免包含表头或者空白行的干扰),可以把范围改成固定的比赛数据区域,比如:
=SUMIF(D$2:D$5, A2, INDEX(SPLIT(F$2:F$5, "-"),,1)) + SUMIF(E$2:E$5, A2, INDEX(SPLIT(F$2:F$5, "-"),,2))
这里的$是绝对引用,固定住比赛数据的范围,下拉公式的时候就不会跑偏啦。
备注:内容来源于stack exchange,提问作者Francesco
相关产品推荐
相关产品推荐

