- ベストアンサー
エクセルの日付について
A1に年度、A2に月、B2に日を入れた表があり、A3、B3以降もそれぞれ違う月、日が入っています。この表から、C2に日付データに直したものを入れたいのですが、年度で考えているため1・2・3月がどうしても翌年に変換されません。 A B C 1 21 2 4 2 2009/4/2 3 1 20 2010/1/20 どのような関数をいれればよいでしょうか。 教えてください。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! 横からお邪魔します。 すでに回答は出ていますので、 補足に >+88でも同じ結果がでましたが、+1988をするとなぜ西暦になおるのでしょうか? とあることだけに関する投稿です。 DATE関数ではシリアル値が必要で、「年」「月」「日」を明記しなければなりません。 すなわち、1988をプラスするということは 21+1988=2009 となり今年の西暦になりますよね? (昭和64年=平成元年=西暦1989年)となりますので、1988年は平成0年という考え方になります。 そういう意味で1988を元号の数値にプラスすると平成の西暦表示ができるという意味です。 次に、+88でも同じ結果になる意味ですが、 DETE関数の関数ダイアログボックスの「年」の欄を空白にして、月と日だけを入力してみてください。 1900年の日付になります。 (Excelは1900年の1月1日をシリアル値の「1」としているのはご存知だと思います) すなわち 空白=0 ですので、空白の代わりに 88 と入力すると 1900+88 と同じ意味になりますので、No.2さんの数式に 88を入力すると 21+88=109 を入力したのと同じことです。 すなわち、1900+109=2009 となり今年の西暦になります。 この程度でお分かりいただけたでしょうか? 以上、長々と書きましたが、 お役に立てれば幸いです。m(__)m
その他の回答 (5)
#2です。 「+1988をする理由も教えていただけませんか?」 入力された数字が「21」なので、西暦に直すために1988を加えています。 #3、#4さんのように平成を表す"H"を付け加えるなら要りません。
お礼
補足にまで答えていただきありがとうございます。
補足
+88でも同じ結果がでましたが、+1988をするとなぜ西暦になおるのでしょうか?
- KURUMITO
- ベストアンサー率42% (1835/4283)
C2セルには次の式を入力して下方にオートフィルドラッグしてもよいでしょう。 =("H"&IF(A2<4,A$1+1,A$1)&"."&A2&"."&B2)*1
お礼
お礼が遅くなり申し訳ありません。 参考になりました。ありがとうざいます。
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 =IF(COUNT(A2:B2)>1,DATEVALUE("h"&($A2<4)*1+$A$1&"/"&A2&"/"&B2),"")
お礼
お礼が遅くなり申し訳ありません。 参考になりました。ありがとうざいます。
#1さんの回答を具体的に表すと、 =DATE(A$1+1988+(A3<=3),A3,B3) の様な感じになります。
補足
丁寧にありがとうございます。+1988をする理由も教えていただけませんか?
- chiwa-CF
- ベストアンサー率51% (36/70)
A2に3以下の数字が入力された場合、 A1+1した値で年を処理するよう式を書き換えてはいかがでしょうか?
お礼
お礼が遅くなり申し訳ありません。 参考になりました。ありがとうざいます。
お礼
お礼遅くなりまして申し訳ありません。 とても詳しく説明していただきありがとうございます。