嵌套的 countif 让我头疼

嵌套的 countif 让我头疼

我想要的是以下场景:

  • 如果所有值均为“通过”,则显示“通过”
  • 如果所有值都是“失败”,则显示“失败”
  • 如果所有值都是“未完成”,则显示“未开始”
  • 如果所有值都为空白/空,则显示“无用例”
  • 如果有任何组合则显示“进行中”

我好像完成了 85%,但是我丢失了我的初始顶部,所以我忘记我在哪里了。

到目前为止我有以下公式:

=IF(COUNTIF(G:G,"Pass"),"PASSED",IF(COUNTIF(G:G,"Fail"),"FAILED",IF(COUNTIF(G:G,"Incomplete"),"IN PROGRESS","NO USE CASES")))

请发送帮助。

答案1

据我了解,我相信下面的内容可以解决您的问题。

=IF(COUNTA(G:H)=0,"NO USE CASES",IF(COUNTIF(G:H,"Pass")=COUNTA(G:H),"PASSED",IF(COUNTIF(G:H,"Fail")=COUNTA(G:H),"FAILED",IF(COUNTIF(G:H,"Incomplete")=COUNTA(G:H),"NOT STARTED","IN PROGRESS"))))

我采取的方法是创建一个简单的测试 Excel 表,并在 g 行和 h 行中使用几个变量。我发现的关键是 countif 可能有点名不副实,它返回匹配的数量。在原始公式中,如果至少有一个“通过”,它将返回 true,然后停止任何进一步的处理。使用康塔函数,它会检查是否全部条目是否通过,如果为真则返回 PASSED。

有趣的是,如果存在传递条目。因此,公式所做的第一件事是使用 counta 检查有多少个非空白单元格。如果有 0 个,则返回“无用例”,否则将处理规则。

答案2

尝试一下这个:

=IF(COUNTIF(G:H,"Pass")=COUNTA(G:H),"PASSED",IF(COUNTIF(G:H,"Fail")=COUNTA(G:H),"FAILED",IF(COUNTIF(G:H,"Incomplete")=COUNTA(G:H),"IN PROGRESS","NO USE CASES")))

解释:

IF需要逻辑测试,但您只使用了COUNTIF(G:H,"something")返回单词实例数的测试。建议的公式将该数字与包含任何数据的单元格总数进行比较。

相关内容