我有以下公式,它返回一系列单元格中的最低条件,即它将查找'严重'首先在单元格的范围内,如果它找到它,它将返回该单元格列表的整体条件为“关键”,如果不是,它将搜索“差”'等等。这用于查找零件装配的整体状况 - 如果单个零件状况不佳而所有其他零件都是新零件,那么装配应归类为状况不佳。
=IF(COUNTIF($B$2:$B$4,"Critical"),"Critical
"&"See component...",IF(COUNTIF($B$2:$B$4,"Poor"),"Poor
"&"See component...",IF(COUNTIF($B$2:$B$4,"Fair"),"Fair
"&"See component...",IF(COUNTIF($B$2:$B$4,"Good"),"Good
"&"See component...",IF(COUNTIF($B$2:$B$4,"New"),"New
"&"See component...",IF(COUNTIF($B$2:$B$4,"Unknown"),"Unknown
"&"See component..."))))))
上面的公式可以做到这一点。问题是,我还想显示返回最低条件的组件名称。因此,如果将单元格B4列为"严重",那么那将是结束IF语句的单元格。如果B4是结束IF语句的值,我想显示F4的内容。所以我的小组应该说:
Critical
See component [component name goes here]
有谁知道我怎么做到这一点?我在下面的工作Excel文件中发布了一个链接,以帮助解决问题。任何帮助将不胜感激。
答案 0 :(得分:1)
我认为您所追求的是MATCH
和INDEX
字段一起工作。
MATCH
将返回行号,INDEX
将返回值。
=IF(COUNTIF($B$2:$B$4,"Critical"),"Critical
"&"See component..."&INDEX($A$2:$A$4,MATCH("Critical",$B$2:$B$4,0)),IF(COUNTIF($B$2:$B$4,"Poor"),"Poor
"&"See component..."&INDEX($A$2:$A$4,MATCH("Poor",$B$2:$B$4,0)),IF(COUNTIF($B$2:$B$4,"Fair"),"Fair
"&"See component..."&INDEX($A$2:$A$4,MATCH("Fair",$B$2:$B$4,0)),IF(COUNTIF($B$2:$B$4,"Good"),"Good
"&"See component..."&INDEX($A$2:$A$4,MATCH("Good",$B$2:$B$4,0)),IF(COUNTIF($B$2:$B$4,"New"),"New
"&"See component..."&INDEX($A$2:$A$4,MATCH("New",$B$2:$B$4,0)),IF(COUNTIF($B$2:$B$4,"Unknown"),"Unknown
"&"See component..."&INDEX($A$2:$A$4,MATCH("Unknown",$B$2:$B$4,0))))))))
您可以使用相同的方法来避免笨重的代码 - 为每个值设置一个索引号,并对索引值执行MAX()
或MIN()
,然后使用INDEX
和{{ 1}}以相同的方式返回条件字符串而不是嵌套的MATCH