Excel - 指派优先权

时间:2015-03-11 21:45:14

标签: excel excel-formula conditional-statements

逻辑上,我有一套分层的字符串,如下所示:

Priority 1 = "SAME" <---Most important

Priority 2 = "DIFFERENT"

Priority 3 = "CLASSICAL"

Priority 4 = "DROPPED" <---Least important

如果我有5个连续的Excel单元格,并且在每个单元格中有上述字符串中的1个的任意组合,我希望第六个单元格显示最高优先级(如果它至少存在)。可能会出现许多组合,下面是我试图实现的几个示例,每个示例描绘了5个连续的单元格,每个单元格都有一个字符串:

示例1:

| DROPPED | DROPPED | CLASSICAL | DROPPED | DROPPED |

第六个单元格应该相等:| CLASSICAL |因为它具有最高优先级,至少显示一次

示例2:

| CLASSICAL | DIFFERENT| SAME | DROPPED | DIFFERENT|

第六个单元格应该相等:| SAME |因为它具有最高优先级,至少显示一次

示例3:

| DIFFERENT | CLASSICAL |CLASSICAL | DROPPED | DIFFERENT |

第六个单元格应该相等:| DIFFERENT |因为它具有最高优先级,至少显示一次

2 个答案:

答案 0 :(得分:2)

如果你在字符串前添加了数字,就像 “1 SAME”,“2 DIFFERENT”等,您可以使用以下数组公式

 =INDEX(A1:E5,MATCH(MIN(VALUE(LEFT(A1:E5,1))),VALUE(LEFT(A1:E5,1)),0))

CTRL + SHIFT + ENTER 输入数组公式。

答案 1 :(得分:1)

假设您的5个连续单元格位于A到E列中,您可以在单元格F中使用此公式:

=IF(OR(A1="SAME",B1="SAME",C1="SAME",D1="SAME",E1="SAME"),"SAME",IF(OR(A1="DIFFERENT",B1="DIFFERENT",C1="DIFFERENT",D1="DIFFERENT",E1="DIFFERENT"),"DIFFERENT",IF(OR(A1="CLASSICAL",B1="CLASSICAL",C1="CLASSICAL",D1="CLASSICAL",E1="CLASSICAL"),"CLASSICAL",IF(OR(A1="DROPPED",B1="DROPPED",C1="DROPPED",D1="DROPPED",E1="DROPPED"),"DROPPED","No Match"))))

公式的结尾定义了如果没有匹配则说什么。我把它设置为&#34; No Match&#34;但你可以用&#34;&#34;为空白或您想要看到的任何字符串。您可以根据需要将其复制为多行:

enter image description here