2017-10-07 95 views
0

我已經完成了這個邏輯的75%,我只是需要最後一部分的幫助。帶有IF語句的Excel邏輯

這裏是邏輯=

=IF(AND(OR(G3=31,G3="31"),(TODAY()-60)>F3),"update to 32/40",IF(AND(SUM(H3:J3)=0,OR(G3=32,G3="32"),(TODAY()-105)>F3),"update to 33","no action")) 

這基本上是說:

  1. 如果G3是31,如果旗下60過去幾天在F3的日期,那麼我希望它顯示「更新到32/40"
  2. 如果G3是32和H3值:J3等於0和105天過去F3的日期,那麼我希望它說:‘更新到33’

我需要進入到這個方程的邏輯是

如果G3是31和H3:J3等於0,如果它的105天過去在F3然後我還想要的結果顯示出「更新到33」

非常感謝您的幫助:d

+1

用粗體表示你說G3 = 31,但是在第二點它是G3 = 32。這是一個錯字嗎?其次,如果是過去105天或105天以上。 SUM(H3:J3)= 0的潛在問題是,如果H3爲-1,J3爲1,其餘爲0,那麼你的總和將爲0,但所有的單元格都不是0. –

+0

我認爲你錯過了()()(OR(G3 = 31,G3 =「31」),(TODAY() )-60)> F3))...,'與第二個 – BruceWayne

+0

相同,可以使用'VALUE(G3)= 31'來代替使用OR(G3 = 31,G3 =「31」)'。 – Mahesh

回答

0

請試試這個公式。

=INDEX({"no action","update to 32","update to 33"},IF(TODAY()-F3>105, IF(AND(G3=31, SUM(H3:J3)<>0), 2,3), IF(TODAY()-F3>60, 2,1))) 

首先,要了解這也許非常規的做法,考慮INDEX函數一樣,INDEX({"no action","update to 32","update to 33"},1)。這三個選項從1到3進行編號。在上面的公式中,嵌套的IF條件因此全部評估爲1到3之間的數字,這只是縮短公式,但不會降低其複雜性。

我通過定義何時應該顯示選擇2而不是選擇3來解決陷入僵局的地方,而且當日期超過105天時,實際上是對所描述內容的逆轉。這種邏輯反轉是棘手的。我希望我說得對。 :-)