2015-04-22 23 views
0

我在嘗試構建一個Excel電子表格,它可以將y/n答案轉換爲可以在日期中反映出來的數字。基於結果添加年份的公式

我有4 columns-

  • 日期
  • 輻射直到保存日期

日期欄顯示的測試的日期

  • 彈片
  • 文件。第二列需要反映他們是否需要輻射測試(是/否答案)。第三列需要反映他們是否需要彈片測試(y/n答案),最後一列顯示由以前的答案決定的文件保存日期。

    想象的日期是01/01/2010

    • 如果輻射勾選「Y」,那麼你就需要到50年添加到上面的日期。
    • 如果彈片被選中「Y」,那麼您需要在上述日期添加20年。
    • 如果兩個都勾選爲「是」,則輻射優先並將50年添加到日期(而不是50 + 20)。
    • 如果兩個都不勾選「N」,那麼您只能添加10年。

    希望我解釋正確。任何幫助都會很棒。

    乾杯。

  • +1

    你已經嘗試過任何配方嗎?如果是這樣,哪一個最能解決你的問題? –

    回答

    0

    假設日期是列A格式化日期2010年1月1日,然後在B和Shrapnel中的標準輻射答案(該公式)放置在D(但可能在任何地方)結果單元格需要格式化作爲沒有小數位的數字。

    任何問題,讓我知道,希望有幫助:)

    =IF(AND(B2="Y",C2="Y"),YEAR(A2)+50,IF(AND(B2="Y",C2="N"),YEAR(A2)+50,IF(AND(B2="N",C2="Y"),YEAR(A2)+20,YEAR(A2)+10))) 
    
    1

    嘗試

    = EDATE(A2,IF(B2 = 「Y」,50,IF(C2 = 「Y」 ,20,10))* 12)

    enter image description here

    0

    我寧願保持IF功能在Excel中儘可能地簡單。他們可以變得非常複雜,所以在這種情況下,我認爲使用MAXIF的組合是一種更清潔的方法。

    =EDATE([@Date],MAX(IF([@Radiation]="Y",50,10),IF([@Shrapnel]="Y",20,10))*12) 
    

    這給出了這樣的結果:

    +---+------------+-----------+----------+---------------------+ 
    | |  A  |  B  | C  |   D   | 
    +---+------------+-----------+----------+---------------------+ 
    | 1 | Date  | Radiation | Shrapnel | File saved til date | 
    | 2 | 2010-01-01 | N   | N  | 2020-01-01   | 
    | 3 | 2010-01-01 | Y   | N  | 2060-01-01   | 
    | 4 | 2010-01-01 | N   | Y  | 2030-01-01   | 
    | 5 | 2010-01-01 | Y   | Y  | 2060-01-01   | 
    +---+------------+-----------+----------+---------------------+ 
    

    注:我用ISO日期格式爲消除歧義的問題,但是它並沒有在生產中給出的數據和結果重要這個問題。