【问题标题】:How to get the SUMPRODUCT of unequal arrays Google Spreadsheet如何获得不等数组的 SUMPRODUCT 谷歌电子表格
【发布时间】:2014-11-07 02:37:37
【问题描述】:

Google states thatSUMPRODUCT "计算两个大小相等的数组或范围中对应条目的乘积之和"。

我想要做的是获得两个 不相等 大小的数组中相应条目的乘积之和。这样的事情可以用Excel来完成:

=SUMPRODUCT((WEEKDAY(A1:Z1,2)>5)*(A2:Z10="self"))

这将显示“self”出现在第 2 到 10 行中的所有时间的总和,其中第 1 行是周末。在 Google 电子表格中,等效项应为

=ArrayFormula( SUMPRODUCT(WEEKDAY(A1:Z1,2)> 5, A2:Z10="self" ) )

但是,因为 Google 电子表格只能接受大小相等的数组,所以这将失败。所以在我看来,我有三个选择:

  1. 在第 1 行和第 2 行之间再插入 8 行,其中包含所有日期的副本 第 1 行
  2. 重做8个和的公式,例如:

=ArrayFormula( SUMPRODUCT(...)) + ArrayFormula( SUMPRODUCT(...)) ...等...

  1. 寻找另一个更有效的公式

所以问题归结为第 3 点 - 我可以使用哪些其他公式来生成第 2 到第 10 行的数组总和,以便我可以在 SUMPRODUCT 中将它们相乘?或者是否有其他功能可以帮助我完成同样的事情?

谢谢!

【问题讨论】:

    标签: google-sheets formula


    【解决方案1】:

    我不知道我是怎么错过的,但 Excel 的代码在 Google 电子表格中也能完美运行。所以这是最终的答案:

    =ArrayFormula(SUMPRODUCT( ( weekday(A1:Z1,2)>5 ) * ( A2:Z10 = "self" ) ))
    

    希望其他人觉得这很有用!

    【讨论】:

    • 感谢您花时间发布自己的答案,是的,我发现这很有用,干杯!
    猜你喜欢
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多