You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets:多单元格唯一值提取与计数问题咨询

解决电影角色登场场次的去重提取与计数问题

我完全懂你的需求——要从表格里提取某电影角色对应的唯一登场场次编号(去掉重复的场次),同时还要统计这个角色总共登场了多少个不同的场次。下面给你适配的公式方案,直接就能用:

1. 提取去重后的场次编号(逗号分隔)

你原来的公式会返回重复场次,只需要在IF筛选后加一层UNIQUE函数去重即可,最终公式:

=ArrayFormula(TEXTJOIN(", ", TRUE, UNIQUE(IF($B$11:$B$64=E13, $A$11:$A$64, ""))))

如果想在没有匹配场次时显示友好提示(比如“无登场记录”),可以套个IFERROR:

=ArrayFormula(IFERROR(TEXTJOIN(", ", TRUE, UNIQUE(IF($B$11:$B$64=E13, $A$11:$A$64, ""))), "无登场记录"))

公式逻辑:

  • IF($B$11:$B$64=E13, $A$11:$A$64, ""):先筛选出E13单元格角色对应的所有场次编号,不匹配的返回空值
  • UNIQUE(...):对筛选出的场次编号去重,只保留唯一值
  • TEXTJOIN(", ", TRUE, ...):把去重后的编号用逗号加空格连接成文本
  • ArrayFormula:让公式对整个单元格区域生效

2. 统计唯一场次的数量

要统计不同场次的个数,用COUNTUNIQUE函数直接统计去重后的数量即可:

=ArrayFormula(COUNTUNIQUE(IF($B$11:$B$64=E13, $A$11:$A$64, "")))

同样,想优化无匹配时的显示:

=ArrayFormula(IFERROR(COUNTUNIQUE(IF($B$11:$B$64=E13, $A$11:$A$64, "")), 0))

公式逻辑:

  • 先通过IF筛选出对应角色的所有场次
  • COUNTUNIQUE直接统计其中的唯一值数量,自动忽略重复和空值

兼容旧版Excel的备选方案(如果没有UNIQUE/COUNTUNIQUE函数)

如果你用的是旧版Excel(不支持动态数组函数),可以用以下方案:

去重提取场次编号

需要按Ctrl+Shift+Enter作为数组公式输入:

=TEXTJOIN(", ", TRUE, IF(MATCH($A$11:$A$64&$B$11:$B$64, $A$11:$A$64&$B$11:$B$64, 0)=ROW($A$11:$A$64)-ROW($A$11)+1, IF($B$11:$B$64=E13, $A$11:$A$64, ""), ""))

统计唯一场次数量

=SUMPRODUCT(($B$11:$B$64=E13)/COUNTIFS($B$11:$B$64, E13, $A$11:$A$64, $A$11:$A$64))

内容的提问来源于stack exchange,提问作者Shian Han

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:04:39