Excel嵌套IF在SumIfs中
好。 所以我想在我的SUMIFS
公式中嵌套IF
。 我遇到的唯一问题是当我的一个引用的单元格显示FALSE
,公式不再起作用。 我如何获得公式从SUMIFS
公式中完全删除标准,并仍然工作?
我用过的代码
=SUMIFS(R:R,IF(BE4=TRUE,I:I),IF(BE4=TRUE,BD4),J:J,BD5) =IF(BE4=TRUE,SUMIFS(R:R,I:I,BD4),0)+IF(BE5=TRUE,SUMIFS(R:R,J:J,BD5),0)
我甚至尝试将SUMIFS
公式分解为多个单元格,并使用IF
和INDIRECT
来创build一个工作代码。 只是不断popup#REF
错误。
这是代码
=INDIRECT(CONCATENATE(BK1,IF(BE2=TRUE,BK2,""),IF(BE3=TRUE,BK3,""),IF(BE4=TRUE,BK4,""),IF(BE5=TRUE,BK5,""),BK6))
这是在IF之前无法使用的代码。
=INDIRECT(CONCATENATE(BK1,BK2,BK3,BK4,BK5,BK6))
任何帮助将不胜感激。 谢谢
模拟表https://www.dropbox.com/s/tl64vbsalcqxqdm/CriteriaIFS.xlsx?dl=0
试试这个公式:
=SUMIFS(BK1:BK6,BK1:BK6,">=0")
请尝试这个公式,
=IF(BE4=TRUE,SUMIFS(R:R,I:I,BD4,J:J,BD5),SUMIFS(R:R,J:J,BD5))
你的公式
=SUMIFS(R:R,IF(BE4=TRUE,I:I),IF(BE4=TRUE,BD4),J:J,BD5)
你说的是:从column R
求和的一切,如果在BD5
与J
相匹配, THEN
IF
与BD5
匹配, THEN
IF BE4 is TRUE
THEN
。 那么,错误是因为,如果BE4
是真的是返回一个string不是一个范围。 相反,你可以使用这个:
=SUMIFS(R:R,INDIRECT(IF(BE4=TRUE,I:I)),INDIRECT(IF(BE4=TRUE,BD4)),J:J,BD5)
这样就可以了,直到BE4
是FALSE
。 因为INDIRECT
函数返回一个#REF!
…将是一个烂摊子。
我不确定我是否能够理解整个想法,但请告诉我是否需要改进。
编辑#1
阅读您的意见我认为这可以帮助:
=IF(BE4=TRUE,SUMIFS(R:R,I:I,BD4),0)+IF(BE4=TRUE,SUMIFS(R:R,J:J,BD5))
尝试发布一些dummie数据库(使用文本表格格式)给你一个更好的帮助…并记住阅读这个: 如何问,因为你的问题是模糊的,许多评论和答案是“猜测”你真的想要什么
试试这个数组公式:
=SUMIFS(N:N,IF($A$2,E:E,T:T),IF($A$2,$C$2,""),IF($A$3,F:F,T:T),IF($A$3,$C$3,""),IF($A$4,H:H,T:T),IF($A$4,$C$4,""),IF($A$5,I:I,T:T),IF($A$5,$C$5,""))
这是一个数组公式,并且必须用Ctrl-Shift-Enter确认。
这是基于您提供的数据表。 您将需要更改对工作表的引用。 列T引用应该是一个空的列。