据我了解,您可以使用“ +”作为在SUMPRODUCT公式中包含OR条件的方式。但是我的公式有问题。
我尝试在公式中插入OR条件,概述如下:
贷款类型=其他....或贷款类型= HELOC ....或锁定日期=“”
此公式可带回10,240
=SUMPRODUCT(--(Table1[Loan Type]="Other")+(Table1[Loan Type]="HELOC")+(Table1[LOCK DATE]=""), --(Table1[DPA] <> "Y"),--(Table1[Disbursement Date]=Daily!$E36),--(Table1[CLOSING DATE] > 1), --(Table1[Run Date] > E36),--ISERROR(SEARCH("Jumbo",(Table1[Loan Program]))), Table1[Total Loan Amount])
此公式可带回5,120
=SUMPRODUCT(--(Table1[Loan Type]="Other")+(Table1[LOCK DATE]=""), --(Table1[DPA] <> "Y"),--(Table1[Disbursement Date]=Daily!$E36),--(Table1[CLOSING DATE] > 1), --(Table1[Run Date] > E36),--ISERROR(SEARCH("Jumbo",(Table1[Loan Program]))), Table1[Total Loan Amount])
唯一的区别是公式开头的OR(+)标准。第一个公式是错误的重复计算(整个数据集中只有一个实例,贷款金额为5,120)。有什么想法吗?
答案 0 :(得分:1)
将您的OR条件包装在SIGN function中,以使两个或多个肯定值返回的值不超过1。
=SUMPRODUCT(SIGN((Table1[Loan Type]="Other")+(Table1[Loan Type]="HELOC")+(Table1[LOCK DATE]="")),
--(Table1[DPA] <> "Y"), --(Table1[Disbursement Date]=Daily!$E36),
--(Table1[CLOSING DATE] > 1), --(Table1[Run Date] > E36),
--ISERROR(SEARCH("Jumbo", Table1[Loan Program])),
Table1[Total Loan Amount])
任何涉及布尔值的数学运算都将布尔值转换为1或0。由于要添加三个布尔值,因此一开始不需要双精度一元。