【问题标题】:Calculate PRODUCT of a sub-range in a Google Sheets range计算 Google 表格范围中子范围的 PRODUCT
【发布时间】:2020-04-15 15:35:24
【问题描述】:

我有一个范围,其中列的类型和行的级别。 我需要找到从级别 1 到给定类型的给定级别的子范围的 PRODUCT。

到目前为止,我尝试使用以下方法找到子范围的开始和结束单元格的位置:

=CELL("address",INDEX(A1:N21,2,MATCH(R4,A1:N1,0)))

=CELL("address",index(A1:N21,R3+1,match(R4,A1:N1,0)))

然后我考虑使用 CONCATENATE 来给出范围地址,但它返回 0。

示例表: https://docs.google.com/spreadsheets/d/1byIjDzHZE6s5N1PcN9yvSeC51bm9NVVC1tc1gjQQLHA/edit#gid=0

【问题讨论】:

  • 您要执行的产品是什么,在您用另一个单元格指定行和列后(您还指定了行和列)范围内的特定单元格?另外,当我访问您的工作表时,我可以看到您已经执行了几个产品,您是否已经解决了您的问题?谢谢!
  • 是的,我的示例表中的一个范围。我找到了一个解决方案,但它很长。

标签: google-sheets google-sheets-formula


【解决方案1】:

你是对的,你不需要这么长的公式。 Index 返回一个单元格引用,因此您可以像这样以 index(...startrow,startcol):index(...endrow,endcol) 的形式做一些事情:

=PRODUCT(INDEX(A1:N21,2,MATCH(R4,A1:N1,0)):INDEX(A1:N21,R3+1,MATCH(R4,A1:N1,0)))

偏移更短:

=PRODUCT(offset(A1,1,MATCH(R4,A1:N1,0)-1,R3,1))

【讨论】:

    【解决方案2】:

    我通过引用范围找到了一种解决方案:

    =PRODUCT(INDIRECT(CELL("address",INDEX(A1:N21,2,MATCH(R4,A1:N1,0)))&":"&CELL("address",INDEX(A1:N21,R3+1,MATCH(R4,A1:N1,0)))))

    但是,它很长。我希望有更好的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多