Google Sheets中ARRAYFORMULA嵌套SUMIF(INDIRECT())返回0问题求助
Google Sheets:ARRAYFORMULA嵌套SUMIF动态范围返回0值问题
我尝试将带动态范围的SUMIF公式嵌套进ARRAYFORMULA中,该动态范围由INDIRECT(ADDRESS())组合生成,基于输入单元格$D$2(因R1C1表示法在ARRAYFORMULA中跨表引用无效,故采用此方法)。公式会引用$D$2的日期,对每行中截至该日期对应列的数值求和。
可正常返回结果的公式
=(IF(B6:B<>"", IF((isnumber(search("** Expenses",B6:B))=FALSE)+(B6:B="Total Expenses"), SUMIF(INDIRECT("Actual P&L!" & ADDRESS(MATCH(B6:B,'Actual P&L'!B:B,0),3,4,TRUE)&":"&ADDRESS(MATCH(B6:B,'Actual P&L'!B:B,0),MATCH(TEXT($D$2,"Mmm-YY"), 'Actual P&L'!$8:$8, 0),4,TRUE),TRUE),">=0"), SUMIF(INDIRECT(ADDRESS(MATCH("Total "&B6:B,'Actual P&L'!B:B,0),3,4,TRUE,"Actual P&L")&":"&ADDRESS(MATCH("Total "&B6:B,'Actual P&L'!B:B,0),MATCH(TEXT($D$2,"Mmm-YY"), 'Actual P&L'!$8:$8, 0),4,TRUE),TRUE),">=0")), ""))
简化版公式
=(IF(B6:B<>"",SUMIF(INDIRECT("Actual P&L!" & ADDRESS(MATCH(B6:B,'Actual P&L'!B:B,0),3,4,TRUE)&":"&ADDRESS(MATCH(B6:B,'Actual P&L'!B:B,0),MATCH(TEXT($D$2,"Mmm-YY"), 'Actual P&L'!$8:$8, 0),4,TRUE),TRUE),">=0"),""))
上述公式中的IF语句用于遍历每行并跳过空白行。
嵌套ARRAYFORMULA后返回0值的公式
=arrayformula(if(B6:B<>"",SUMIF(INDIRECT("Actual P&L!" & ADDRESS(MATCH(B6:B,'Actual P&L'!B:B,0),3,4,TRUE)&":"&ADDRESS(MATCH(B6:B,'Actual P&L'!B:B,0),MATCH(TEXT($D$2,"Mmm-YY"), 'Actual P&L'!$8:$8, 0),4,TRUE),TRUE),">=0"),""))
将公式包裹进ARRAYFORMULA后,虽能自动填充行并跳过空白行,但所有返回值均为0。
内容的提问来源于stack exchange,提问作者Cate Kemp SBFO
相关产品推荐
相关产品推荐

