我目前正在使用以下公式来填充工作表中特定数据的总和:
=SUM(SUMIF(D:D,{"70000","71000","72000","73000","75000"},F:F))
但是,我正在寻找此公式的补充。我有一个持续时间列(F),其中有分钟范围。每个代码(“70000”,“71000”,“72000”,“73000”,“75000”)都有一个最大值,可以在公式求和之前计算。它们如下:
70000:不大于 30
71000:不大于60
72000:不大于30
73000:不大于60
75000:不大于 15
如果您知道允许这样做的公式,请告诉我。
谢谢您的帮助!
答案1
您需要使用这个数组公式
=SUM(IF(((D1:D100=70000)+(D1:D100=72000))>0,IF(F1:F100>30,30,F1:F100),IF(((D1:D100=71000)+(D1:D100=73000))>0,IF(F1:F100>60,60,F1:F100),IF((D1:D100=75000),IF(F1:F100>15,15,F1:F100)))))
作为数组公式,退出编辑模式时需要使用 Ctrl-Shift-Enter 而不是 Enter 进行确认。如果操作正确,Excel 会将{}
公式放在一边。
还要注意,引用不再是完整的列,而应该设置为数据集的范围,以避免不必要的计算。