基本上,我想要以最有效的方式做类似下面的事情,并且使用更多的列:
=and(f2=true,g2=true,h2=true,i2=true)
谢谢。
答案1
您可以使用数组公式非常简洁地完成此操作。将以下内容粘贴到公式栏中,然后按Ctrl+ Shift+ Enter。
=AND(F2:I2)
编辑:
回应 Jerry 的评论,如果您要检查的范围包含布尔值以外的任何内容,则需要使用更具体的公式(因为所有文本、空白和不等于 0 的数字都将被评估为TRUE
)。以下内容仅将布尔值为真的单元格视为TRUE
真。
=AND(F2:I2=TRUE)
这也应该通过按 ++Ctrl来作为数组函数输入。ShiftEnter
如果您碰巧想将和TRUE
都算作真,那么1
您可以使用这个更复杂的数组公式(用Ctrl++输入)。ShiftEnter
=AND(NOT(ISERROR(MATCH(F2:I2,{TRUE,1},0))))
答案2
你可以做类似这样的更短的事情:
=COUNTIF(F2:I2,TRUE)=4
这将计算数量TRUE
并检查是否有 4。
或者,如果您不想“计算”它们并输入数字...
=COUNTIF(F2:I2,TRUE)=COUNTA(F2:I2)
以上不会考虑空白单元格。如果您也想计算它们:
=COUNTIF(F2:I2,TRUE)=COUNTA(F2:I2)+COUNTBLANK(F2:I2)
答案3
另一种选择是利用在某些情况下 TRUE 计算为 1 而 FALSE 计算为 0 的事实。
使用上面的链接,您可以使用该功能
=product(F2:I2*1)
如果它们全都为真,则计算结果为 1,如果有任何假或空白,则计算结果为 0。
此功能需要按Ctrl+Shift+回车因为它是一个数组公式。