xls SUMPRODUCT 如何处理布尔值?

xls SUMPRODUCT 如何处理布尔值?

我这里有一个公式

=sumproduct((sheet1!$A$2:$A$3000=$A69)*(sheet1!$E$1:$F$1=$D69)*(sheet1!G$2:G$3000)*(sheet1!$E$2:$F$3000))

它产生了一些价值,

但是当我执行这个

=(sheet1!$A$2:$A$3000=$A69)

它产生布尔值(TRUE/FALSE),

xls 如何使用布尔值作为数组生成一个值?

答案1

TRUE/FALSE您正在将该数组与产生布尔值或(可能)包含数字的其他数组相乘,因此当您将包含值的数组相乘时,这些TRUE值的行为就像 1,而其他FALSE值的行为就像零。

例如,如果我将两个数组相乘,如下所示:

={TRUE,TRUE,FALSE,FALSE}*{TRUE,FALSE,TRUE,FALSE}

结果是

={1,0,0,0}

或者用这个

={TRUE,TRUE,FALSE,FALSE}*{1,2,3,4}

我得到了结果

={1,2,0,0}

公式的结果是 E2:F3000 中相关行标签/列标题与 A69/D69 匹配的所有值的乘积之和,乘以 G2:G3000 中的相关行

相关内容