从单个行(工作表)中获取前 X 值的总和

Get the Sum of the top X values from a single Row (Sheets)

我正在努力获取某行的前 X 个值的总和。

在这种情况下假设前 3 名。

A B C D E
1 john 1 4 3 2
2 Mary 4 5 1 2

因此前 3 个值的总和将为

name Total
John 9
Mary 11

我可以得到一个 LARGE 数字,但无法弄清楚如何获得行中的前 5 个(然后求和)。大多数示例的值都在 COLS 中,但我的数据在 ROWS

答案:

连续前5的总和:

=ARRAYFORMULA(SUM(IFERROR(LARGE(A1:1, {1, 2, 3, 4, 5}), 0))

这个公式的简化:

  • 用数组表示法,用{1, 2, 3, 4, 5}
  • 表示行中第一、二、三、四、五高
  • 将此数组设置为 LARGE 公式的 n 参数,并将行作为 range 参数
  • 如果 LARGE 出于某种原因抛出错误,return 值 0 对应 n
  • 的值
  • SUM 所有答案
  • 包裹在 ARRAYFORMULA 中,以便 LARGE 获取所有数组值,而不仅仅是第一个。

参考文献: