2012-10-14 80 views
0

我的Excel有點問題。我只是做一個功能,檢查一個人是否比19歲更老。如何解決某人是否年齡大於19的問題

我檢查了一個在線功能,但它不工作的方式。

首先我有一個不尋常的格式的日期14 10 2012年,我用=SUBSTITUTE(J2, " ", ".") 獲得二零一二年十月十四日

後,我用一個公式

=IF(P2<DATE(DAY(NOW()),MONTH(NOW()),YEAR(NOW())),"Older than 
19","Too young") 

但沒有母校我做什麼它無法正常工作。如果數字越大或越小,它顯示相同的決心

爲什麼=DATE(DAY(TODAY()),MONTH(TODAY()),YEAR(TODAY()))告訴我3.4.1920?

+1

是格式化日期的問題?或關於使用DATEDIF()計算年齡? –

+1

如果你可以將你的「日期」轉換成有效的格式,那麼你可以使用DATEDIF,比如'= IF(DATEDIF(A1,TODAY(),「Y」)> = 19, 「老年人」,「年輕人」)' –

回答

0
=IF(YEAR(NOW())-RIGHT(J2,4)>55,"starejsi",IF(YEAR(NOW())-RIGHT(J2,4)=55, 
IF(MONTH(NOW())-LEFT(RIGHT(J2,7),2)>0,"older", 
IF(MONTH(NOW())-LEFT(RIGHT(J2,7),2)=0, 
IF(DAY(NOW())-LEFT(J2,FIND(" ",J2,1))>=0,"older","younger"),"younger")),"younger")) 

最後我已經做了。這是代碼

+0

那麼「starejsi」=「老」?嘗試DATEDIF像'= IF(DATEDIF(SUBSTITUTE(J2,「」,「。」),TODAY(),「y」)> = 55,「更老」,「更年輕」) - 我假設。是您所在地區的必需日期分隔符 –

1

我認爲你可能有錯誤的方式參數。如果我把:

= DATE(DAY(TODAY()),MONTH(TODAY()),YEAR(TODAY()))

到Excel中,我也得到1920年3月4日。

但是,如果我輸入:

= DATE(YEAR(TODAY()),MONTH(TODAY()),日(TODAY()))

我得到2012年10月14日 - 今天的日期!

======

正如一個後續,我懷疑你正試圖比較今天的日期與出生日期來確定一個人的年齡,以及他們是否年滿19歲?

試試這個:

  1. 輸入上面的公式到單元格(隱藏的,如果你喜歡) - 讓叫它A1
  2. 擁有人的出生日期輸入到另一個單元格 - 可以說,A2
  3. 將公式= A1-A2輸入到第三個單元格(A3)中。這給了你幾天的年齡。
  4. 另一個公式 - 這個時間= A3/365.25(也就是說,他們的年齡天數除以一年中的天數)。比方說,這是A4
  5. 它是那麼簡單的IF語句= IF(A4> 19 「超過19」, 「太年輕」)

希望幫助:-)

+0

這現在工作正常:)謝謝我現在只有nead比較這與我的日期,如果日期更小或更大 – WildWorld

+0

它仍然顯示真實應該完美。可悲的是,如果我使用今天和我的日期,它會產生錯誤。 #value如果我今天使用2x,那很好,但是它當然是0。如果我使用2個日期,它仍然是#value – WildWorld

+0

你能解釋一下你正在嘗試做什麼,我會看看我能否幫助你。在澳大利亞時區,所以臨近睡覺時間,但如果你很快找到我,我可能會有機會。如果空間不允許,請給我發電子郵件到[email protected] – Neil

相關問題