首页 > 解决方案 > 如何在不同范围内的arrayformula中求和

问题描述

我想sumif在数组公式中使用来计算这些范围 C:CR:AH 中的数字,这些范围包含从 1 到 10 和“10 以上”的数字,我认为它是 11,但我不能将其命名为 11床单

我试过这个等式,但没有用=ARRAYFORMULA(IF(ROW(A:A)=1,"Count of errors",IF(LEN(A:A),IF(IFERROR(REGEXEXTRACT(TRANSPOSE(QUERY(TRANSPOSE(IFS(ISNUMBER({C:AH}), "♦",{C:C,R:AH}="Above 10","♦" )),, 999^99)), "♦"))="♦", 1, 0), )))

我希望等式将 C:C,R:AH 范围内的数字相加,如样本数据中的第 1 行中的列包含 10、4 和 2 以上,所以我需要等式显示 17 等等

示例数据:https ://docs.google.com/spreadsheets/d/1SksZv0h82j5oEZBj2AN5anDFr80AYNR5ettSwkpUKys/edit?usp=sharing

标签: google-sheetssumtransposegoogle-sheets-formulaarray-formulas

解决方案


MMULT对于SUBSTITUTE“Above 10” ,您所需要的一切都很简单:

=ARRAYFORMULA({"Count of errors"; IF(LEN(A2:A), 
 MMULT(SUBSTITUTE(C2:AH, "Above 10", 11)*1, TRANSPOSE(COLUMN(C2:AH)^0)), )})

0


对于{C2:C, R2:AH}使用:

=ARRAYFORMULA({"Count of errors"; IF(LEN(A2:A), 
 MMULT(SUBSTITUTE({C2:C, R2:AH}, "Above 10", 11)*1, TRANSPOSE(COLUMN(Q2:AH)^0)), )})

推荐阅读