将 Google 表格公式转换为数组公式
Converting Google Sheets formula to arrayformula
我必须将 google sheet 中的一个简单公式转换为数组公式,但我不知道该怎么做。
样本数据:
|磷 |一个 |乙 |丙 | D |乙 |
| ------ | - | - | - | - | - |
| 字符串 | 0 | 0 | 6 | 0 | 6 |
| 字符串 | 10| 11| 16| 0 | 37|
| 字符串 | 10| 3 | 6 | 0 | 19|
| 字符串 | 5 | 7 | 28| 0 | 40|
公式在 E 列。
目前的公式是:
=IF(P2="","",SUM(A2:D2))
我正在尝试像这样进行明显的转换:
=ARRAYFORMULA(IF(P2:P="","",SUM((A2:A):(D2:D))))
这只是在 sheet.
的每个单元格中给我 N/A
不确定为什么上面的 table 没有显示为 table。添加屏幕截图以便更好地理解。
假设您的 table 下面没有任何内容,F2 中的以下内容应该会为您提供存在的行数的每行总和。它假定您只会对列 B:E.
求和
=mmult(B2:indirect("E"&counta(A2:A)+1),sequence(counta(A2:A),1,1,0))
N.B - 这不是唯一的方法。
编辑
重新考虑这一点,考虑到对列 P 的依赖性和大量行(再次假设您只想对列 B:E 求和),为什么不使用简单的数组加法呢?
=arrayformula(if(len(P2:P),B2:B+C2:C+D2:D+E2:E,))
这应该为列 P 中的单元格不为空的每一行给出行总和。
这样试试:
=ARRAYFORMULA(IF(A2:A="","",mmult(B2:E*1, transpose(B2:E2 ^ 0))))
我必须将 google sheet 中的一个简单公式转换为数组公式,但我不知道该怎么做。 样本数据: |磷 |一个 |乙 |丙 | D |乙 | | ------ | - | - | - | - | - | | 字符串 | 0 | 0 | 6 | 0 | 6 | | 字符串 | 10| 11| 16| 0 | 37| | 字符串 | 10| 3 | 6 | 0 | 19| | 字符串 | 5 | 7 | 28| 0 | 40|
公式在 E 列。
目前的公式是:
=IF(P2="","",SUM(A2:D2))
我正在尝试像这样进行明显的转换:
=ARRAYFORMULA(IF(P2:P="","",SUM((A2:A):(D2:D))))
这只是在 sheet.
的每个单元格中给我 N/A不确定为什么上面的 table 没有显示为 table。添加屏幕截图以便更好地理解。
假设您的 table 下面没有任何内容,F2 中的以下内容应该会为您提供存在的行数的每行总和。它假定您只会对列 B:E.
求和=mmult(B2:indirect("E"&counta(A2:A)+1),sequence(counta(A2:A),1,1,0))
N.B - 这不是唯一的方法。
编辑 重新考虑这一点,考虑到对列 P 的依赖性和大量行(再次假设您只想对列 B:E 求和),为什么不使用简单的数组加法呢?
=arrayformula(if(len(P2:P),B2:B+C2:C+D2:D+E2:E,))
这应该为列 P 中的单元格不为空的每一行给出行总和。
这样试试:
=ARRAYFORMULA(IF(A2:A="","",mmult(B2:E*1, transpose(B2:E2 ^ 0))))