繁体   English   中英

Google表格:按一列分组并按两列排名

[英]Google Sheets : Group By one column and Rank by 2 columns

我有一个如下表,我需要按 A 列分组并根据以下逻辑确定排名/优先级:

这些是我想做的步骤:

  • 第一个按 A 列分组
  • 然后检查每个组的 B 列。 开始日期越低,排名越小,例如,如果日期是 2022 年和 2023 年,则 2022 年将获得排名 1,而 2023 将获得排名 2,依此类推...
  • 如果行的起始年份相同,则检查 C 列并根据影响分配排名。 影响越大,排名越低。 例如,如果 2 行的起始年份为 2022 年,那么如果其中一行的影响为 100,另一行的影响为 50,则 100 的影响将获得排名 1,而 50 的影响将获得排名 2,依此类推......

请参阅图片以获取 D 列中的示例数据和预期输出

我已经尝试过这个功能,但它只给我基于一列的排名 - https://infoinspired.com/google-docs/spreadsheet/rank-group-wise-in-google-sheets/

还要澄清 D 列是我想通过公式生成的。 我只是在图像中显示了预期的输出。 我们没有可用的,需要从 A、B 和 C 列生成该排名!

任何想法/想法表示赞赏! 谢谢!

您可以使用以下

=SORT(A2:D13,1,1,2,1,3,0)

根据您的范围和语言环境调整公式)

在此处输入图像描述

阅读关于排序

按组获取排名

我了解您希望根据 A、B 和 C 列按组确定排名。

1 - 首先,我们通过创建一个黄色显示的辅助列,将分数从 0 到 100 以保持可读性,将以下公式粘贴E2中。

=ArrayFormula(IF(A2:A="",,(ArrayFormula(B2:B13*C2:C13)/MAX(ArrayFormula(B2:B13*C2:C13)))*100))

在此处输入图像描述

解释

1.a - 将范围B2:B13*C2:C13 Date*Impact 相乘,日期越大,影响越大,输出越大。

ArrayFormula允许将非数组函数与数组一起使用,并能够在许多行和/或列上显示数组公式返回的值。

1.b - 除以/除以输出的MAX并将*乘以 100

2 - 将此公式粘贴F2中并向下拖动以按组获得排名。

=Rank(E2,Filter($E$2:$E$13,$A$2:$A$13=A2),0)

在此处输入图像描述

解释...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM