让 COUNTIFS 忽略空白单元格

Make COUNTIFS ignore blank cells

我正在尝试使用 COUNTIFS 公式来计算已完成的安装次数。这是通过搜索包含许多空白单元格的大型 table 来完成的。使用以下公式时,我收到 #VALUE! 错误,因为 Excel 将空白单元格视为 0s 并且在尝试计算字符串和整数时感到困惑:

=COUNTIFS(B10:B152,"Installs",D10:N152,"Done")

范围 D10:N152 包含空格并导致错误。

我可以让 Excel 忽略那些空白或将它们视为字符串而不是整数吗?

对于COUNTIFS

Important Each additional range must have the same number of rows and columns as the criteria_range1 argument. The ranges do not have to be adjacent to each other.

也许添加一个辅助列,例如 O 和:

=IF(MATCH("Done",D10:N10,0)>=1,"Done","")  

复制下来,然后:

=COUNTIFS(B10:B152,"Installs",O10:O152,"Done")  

现在我们只知道每行一个 Done(假设 Done 在一个单元格中是独立的)然后是一个辅助列:

=COUNTIF(D10:N10,"Done")  

将是比 =IF(MATCH("Done",D10:N10,0)>=1,"Done","") 更短的公式,并且还允许使用比 =COUNTIFS(B10:B152,"Installs",O10:O152,"Done") 更短的公式进行计数,比如:

=SUM(O:O)  

代替(假设 ColumnO 的其余部分为空白或文本,否则 =SUM(O10:O152)。

但是我的目标是尽可能类似于 OP 使用的公式,为此辅助列也需要填充 Done。当时我考虑到每行可能有多个 Done 的可能性。

正如评论中指出的那样,帮助列中填充的击键次数可能少于 =IF(MATCH("Done",D10:N10,0)>=1,"Done",""),如果只是排除测试失败的结果,比如 =IF(MATCH("Done",D10:N10,0)>=1,"Done"),因为 MATCH 从不'fails' – 而是 returns #N/A 未找到匹配项,这对于 COUNTIF 函数来说已经足够了,因为当标准为 Done 时,它不算 #N/As .

试试这个 FormulaArray:

=SUM(($B:$B2="Installs")*($D:$N2="Done"))