首页 > 解决方案 > 如何使用具有多个条件的嵌套 SUM 函数?

问题描述

这个公式几乎完成了,我只是遗漏了一小部分我看不到的!

如果列包含OR ,我希望单元A19SUM列。K:KA:AOPENCLOSED

我错过了什么?

CLOSED如果只计算或者OPEN我需要它来计算两者,则该公式有效。

中的当前公式A19

=IF(COUNT(A9)=1,TEXT(SUMIF('SPREADS LOG'!A:A,("CLOSED"),'SPREADS LOG'!K:K)," £ #,##0.00")&" / "&TEXT(SUM(SUMIF('SPREADS LOG'!A:A,{"CLOSED","OPEN"},'SPREADS LOG'!K:K)," £ #,##0.00"),""))

注意我需要保留/公式中的奇怪之处,因为它正在进行两个单独的计算,我希望它们显示为 1234 / 5678

标签: excelexcel-formulaexcel-2019

解决方案


这种不那么优雅的方式对我有用......

=TEXT(SUMIF('SPREADS LOG'!A:A,("CLOSED"),'SPREADS LOG'!K:K)," £ #,##0.00")&
" / "&
TEXT(SUM(
         SUMIF('SPREADS LOG'!A:A,"Open",'SPREADS LOG'!K:K),
         SUMIF('SPREADS LOG'!A:A,"Closed",'SPREADS LOG'!K:K)
         )," £ #,##0.00")

K 中是否有除 Open 或 Closed 之外的值?如果没有,您可以将第 4 行和第 5 行替换为SPREADS LOG'!A:A.

假设 K 中还有其他值,并且您有 365 订阅,您可以使用新的 LET 函数使这个公式更简单一些。

=LET(sumRng,'SPREADS LOG'!K:K, lkupRng,'SPREADS LOG'!A:A,
           TEXT(SUMIF(lkupRng,("CLOSED"),sumRng)," £ #,##0.00")
           &" / "&
           TEXT(SUM(
                    SUMIF(lkupRng,"Open",sumRng),
                    SUMIF(lkupRng,"Closed",sumRng)
                   )," £ #,##0.00")
    )

推荐阅读