Excel 返回带条件的行中最右边的值

Excel 返回带条件的行中最右边的值,excel,excel-formula,excel-2010,worksheet-function,Excel,Excel Formula,Excel 2010,Worksheet Function,我有一个可变长度的值列表(goout列可能会转到ValueN,这张表会随着时间的推移而扩展)。例如: Subject Value1 Value2 Value3 Value4 Sub1 Pass Fail Fail Sub2 Pass NA Sub3 Fail Fail Fail Fail Sub4 NA NA NA NA Sub5 NA PASS NA 我需要创建一

我有一个可变长度的值列表(goout列可能会转到ValueN,这张表会随着时间的推移而扩展)。例如:

Subject  Value1  Value2  Value3  Value4
Sub1     Pass    Fail    Fail
Sub2     Pass    NA
Sub3     Fail    Fail    Fail    Fail
Sub4     NA      NA      NA      NA
Sub5     NA      PASS    NA
我需要创建一个报告最右边通过或失败的新列,如果所有列都是NA,则只报告NA(没有任何行的所有列都为空),例如:

Subject  Value1  Value2  Value3  Value4  New Column
Sub1     Pass    Fail    Fail            Fail
Sub2     Pass    NA                      Pass
Sub3     Fail    Fail    Fail    Fail    Fail
Sub4     NA      NA      NA      NA      NA
Sub5     NA      Pass    NA              Pass
我在不久前的另一篇文章中找到了帮助我获取最正确值()的帖子,但我不知道如何修改逻辑,使其仅在行中的所有值都是NA时返回NA

这是我用来获得最正确值的公式:

=LOOKUP(2,1/(B2:E2<>""),B2:E2)
=查找(2,1/(B2:E2“”),B2:E2)
我尝试了几种变体,但无法得到仅在所有值都正确时返回NA的逻辑

有人能帮忙吗


编辑:我已经完成了一系列嵌套IF语句的任务,但这并不能解决在添加更多列时必须修改整个工作表的问题。如果存在这样的解决方案,我正在寻找一个健壮的解决方案。

此修改应该可以:

=IF(COUNTIF(B2:E2,"NA")=COUNTA(B2:E2),"NA",LOOKUP(2,1/((B2:E2<>"")*(B2:E2<>"NA")),B2:E2))
=IF(COUNTIF(B2:E2,“NA”)=COUNTA(B2:E2),“NA”,查找(2,1/((B2:E2“”)*(B2:E2“NA”)),B2:E2))

此修改应适用于:

=IF(COUNTIF(B2:E2,"NA")=COUNTA(B2:E2),"NA",LOOKUP(2,1/((B2:E2<>"")*(B2:E2<>"NA")),B2:E2))
=IF(COUNTIF(B2:E2,“NA”)=COUNTA(B2:E2),“NA”,查找(2,1/((B2:E2“”)*(B2:E2“NA”)),B2:E2))
使用在空白单元格和NA值上抛出错误,同时忽略错误。当无法返回任何有效值时,可以覆盖NA值

在G2 as中

=IFERROR(INDEX(B2:E2, AGGREGATE(14, 6, COLUMN(A:D)/(SIGN(LEN(B2:E2))*(B2:E2<>"NA")), 1)), "NA")
=IFERROR(索引(B2:E2,聚合(14,6,列(A:D))/(符号(LEN(B2:E2))*(B2:E2“NA”)),1)),“NA”)
根据需要填写


⑨Excel 2010中引入了。它在早期版本中不可用。

使用在空白单元格和NA值上抛出错误,同时忽略错误。当无法返回任何有效值时,可以覆盖NA值

在G2 as中

=IFERROR(INDEX(B2:E2, AGGREGATE(14, 6, COLUMN(A:D)/(SIGN(LEN(B2:E2))*(B2:E2<>"NA")), 1)), "NA")
=IFERROR(索引(B2:E2,聚合(14,6,列(A:D))/(符号(LEN(B2:E2))*(B2:E2“NA”)),1)),“NA”)
根据需要填写



⑨Excel 2010中引入了。它在早期版本中不可用。

这些是
NA
测试值还是实际的
#N/A
错误?这些是实际值。这些是
NA
测试值还是实际的
#N/A
错误?这些是实际值。G5中有那个讨厌的NA。@Jeeped,我有第5行的NA,但我不确定它的“讨厌之处”我认为这就是要求:“……如果所有列都是NA,则只报告NA。”很抱歉让人费解。是的,这是一个必要的要求;你的第一个公式没有涵盖它,我在等着看是否会有编辑(确实是这样)。“就我个人而言,在这种情况下,我一直在尝试修复更新的。”吉佩德,谢谢你的解惑!当然,你的也很管用。我一直想开始使用
Aggregate
。G5中有一个讨厌的NA。@Jeeped,我对第5行有一个NA,但我不确定它的“讨厌性”。我认为这是要求:“…只有在所有列都是NA的情况下才报告NA。”很抱歉让人费解。是的,这是一个必要的要求;你的第一个公式没有涵盖它,我在等着看是否会有编辑(确实是这样)。“就我个人而言,在这种情况下,我一直在尝试修复更新的。”吉佩德,谢谢你的解惑!当然,你的也很管用。我一直想开始使用
Aggregate
。谢谢你聪明的回答!我不确定是否每个查看文档的人都可以访问Excel 2010,但由于这是一个更好的答案,这就成了他们的问题。:)关于你的回答,我有两个问题,所以我理解这里发生了什么。为什么在聚合函数中使用“COLUMN(A:D)”,以及“operator”做什么?COLUMN(A:D)就像说“从1到4”<代码>是“不相等”谢谢你聪明的回答!我不确定是否每个查看文档的人都可以访问Excel 2010,但由于这是一个更好的答案,这就成了他们的问题。:)关于你的回答,我有两个问题,所以我理解这里发生了什么。为什么在聚合函数中使用“COLUMN(A:D)”,以及“operator”做什么?COLUMN(A:D)就像说“从1到4”<代码>为“不相等”