2016-09-21 74 views
0

我有以下格式的Excel數據:的if else與AND,OR在Excel

severity Type Overview Classification Result 
critical defect closed  Fix    Good 
serious  enhance no change no fix   Low 
Medium  defect no change no fix   Low 
Low   enhance closed  fix    Poor 
critical defect Duplicate fix    Good 
Medium  defect Duplicate fix    Low 
Low   defect Duplicate     Poor 

我寫的公式計算出的結果,但我不能因爲我在Excel不好知識執行。任何幫助,將不勝感激。

這裏的條件是:

Severity   Type    Overview  Classifcation  Result 
Citical/Serious  Defect/Enhance  Closed   Fix     Good 
        Defect/Enhance  Closed   No fix    Poor 
        Defect/Enhance  Closed   Updated    Low 
        Defect/Enhance  Duplicate  No fix    poor 


Medium/low   Defect/Enhance  closed   No fix    Low 
        Defect/Enhance  Duplicate  No fix    Poor 
+0

這是全部1配方? 3行? –

+0

請用單詞或可讀的僞代碼解釋條件。條件和結果以及他們應該從代碼中得到什麼樣的優勢並不明顯。 –

+0

@NicolaiEhemann我想根據「嚴重性」,「類型」,「概述」和「分類」中提供的數據計算「結果」單元格。 – louis

回答

1

假設你有在範圍A1數據:D8,你的第一行是頭。 你可以使用這個(醜)的公式,不正是你在你的條件下表中描述:

=IF(AND(OR(A2="Critical",A2="Serious"),OR(B2="Defect",B2="Enhance")),IF(C2="closed",IF(D2="Fix","Good",IF(D2="No fix","Poor",IF(D2="Updated","Low"))),IF(AND(C2="Duplicate",D2="No"),"poor","No match")), 
IF(AND(OR(A2="Medium",A2="Low"),OR(B2="Defect",B2="Enhance")),IF(AND(C2="closed",D2="No fix"),"Low","No match"),IF(AND(C2="duplicate",D2="No fix"),"Poor"))) 

訣竅是使用其他條件作爲elseif的..而當你有很多就是使得它真的很難讀書。

1

這是不是很好,但解決您的最後一個表中定義的條件是這樣的:

=IF(AND(OR(A2="Critical";A2="Serious");C2="Closed";D2="Fix");"Good";IF(AND(OR(A2="Critical";A2="Serious");C2="Closed";D2="No fix");"Poor";IF(AND(OR(A2="Critical";A2="Serious");C2="Closed";D2="Updated");"Low";IF(AND(OR(A2="Critical";A2="Serious");C2="Duplicate";D2="No fix");"Poor";IF(AND(OR(A2="Medium";A2="Low");C2="Closed";D2="No fix");"Low";IF(AND(OR(A2="Medium";A2="Low");C2="Duplicate";D2="No fix");"Poor";"Undefined")))))) 

寫在一個更可讀的,多時尚(我不知道這將生存複製粘貼&):

=IF(AND(OR(A2="Critical";A2="Serious");C2="Closed";D2="Fix");"Good"; 
    IF(AND(OR(A2="Critical";A2="Serious");C2="Closed";D2="No fix");"Poor"; 
    IF(AND(OR(A2="Critical";A2="Serious");C2="Closed";D2="Updated");"Low"; 
     IF(AND(OR(A2="Critical";A2="Serious");C2="Duplicate";D2="No fix");"Poor"; 
     IF(AND(OR(A2="Medium";A2="Low");C2="Closed";D2="No fix");"Low"; 
      IF(AND(OR(A2="Medium";A2="Low");C2="Duplicate";D2="No fix");"Poor"; 
      "Undefined" 
      ) 
     ) 
     ) 
    ) 
    ) 
) 

一你可以看到,你沒有覆蓋的任何組合將導致"Undefined"。你或許可以結合一些條件,但這不一定會更具可讀性。

的niced的解決辦法或許是一個完整的查找表與選擇()和VLOOKUP()單獨的表...