首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于计算有序项列表中最常见项的电子表格公式

用于计算有序项列表中最常见项的电子表格公式
EN

Web Applications用户
提问于 2020-12-18 15:45:36
回答 2查看 55关注 0票数 2

我正在寻找一个正确的谷歌电子表格公式,以遍历列表的订购项目,并总结最终获胜的项目。

就像你有一个奥斯卡颁奖典礼,你得到了学院妈妈们的投票,每个人都给出了他/她在预定义的候选人名单上的选票。我想得到谁获得最多的第一和第二的选票(其他,也好,但不太相关)。

想象一下,我有几个名字列表,按优先顺序排列:

  1. 迈克简凯特
  2. 简,凯特,迈克
  3. 迈克凯特简..。

申请后的公式应说:

麦克是x2-第一名。

凯特是第二名。

知道怎么做吗?通常,名单是5-8个项目,你得到10-15票.

我已经找到了所有公式的列表,但是很难找到其中一个:https://support.google.com/docs/table/25273?hl=en

EN

回答 2

Web Applications用户

发布于 2020-12-18 21:39:42

请使用以下公式

代码语言:javascript
复制
=QUERY(flatten(ArrayFormula(IFERROR( 
                  REGEXREPLACE(SPLIT(A2:A11,", "),"("®EXREPLACE(A2:A11,", ","\)|\(")&")","$1$2$3"&" "&COLUMN(A1:C1)&" place")))), 
        "select Col1, count(Col1) group by Col1 offset 1 label count(Col1) '' ",0)

(您可以根据需要调整范围A2:A11 )

所使用的职能:

票数 0
EN

Web Applications用户

发布于 2020-12-19 15:58:16

@shershen,为了我在这里的建议,我假设如下:

  1. 以逗号分隔的选项列表运行A2:A
  2. 每个人都会做出三个选择(不多,不少)
  3. 第一选择=3分,第二选择=2分,第三选择= 1pt

在这种情况下,请尝试以下公式:

=ArrayFormula({"#"&SEQUENCE(COUNTUNIQUE(QUERY(FLATTEN(SPLIT(FILTER(A2:A,A2:A<>""),", ",0)),"Select * Where Col1 Is Not Null")),1), QUERY(SPLIT(FLATTEN(SPLIT(REGEXREPLACE(FILTER(A2:A, A2:A<>""),"(\w+), (\w+), (\w+)","$1 3, $2 2, $3 1"),", ",0))," "),"Select Col1, SUM(Col2) Where Col1 Is Not Null Group By Col1 Order By SUM(Col2) Desc Label SUM(Col2) ''")})

请报告这是否产生了您期望的结果,之后我将尽力解释公式是如何工作的。(除非我们知道它能像预期的那样工作,否则它不能有效地利用时间来解释它。)

票数 0
EN
页面原文内容由Web Applications提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://webapps.stackexchange.com/questions/149372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档