異なったセルに入っている「年」「月」「日」データから年月日データを生成する関数は?
お世話になります。
関数で以下のようなものを作りたいと思います。
セルA1,B1,C1にそれぞれ2008、8、4と「年」「月」「日」データが入っています。
D1に関数を入力することによってD1の内容を「2008/08/04」というように年月日のデータに換算したいのです。
次の条件を加えてください。
●生成した年月日データが「日付としてありえないもの」にならないように、年、月、日の元データが入っているA1,B1,C1の内容については人為的チェックを行う。よって生成する関数側でそれらのチェックは不要。
(ただし、チェックも簡単にできるよ、という場合は盛り込んでください)
●生成されたデータを元にして曜日を求めたり、任意の2日を選んで経過日数を計算したり、和暦に変換するなどしたいので、「生成された結果そのものがすでに年月日型」であってほしい。
(よって単純に&マークで連結しただけではダメ・・・・ですよね)
●年月日の区切りは"/"記号で。月、日が一桁の場合は10の位に0を挿入していかなる日付も"/"記号含めて10桁で表記したい。
いただいたコメントには必ずお礼コメント差し上げます。
もっとも要望どおりの回答には必ずポイントを差し上げます。
よろしくお願いします。
回答(4件)
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示
No.4ベストアンサー10pt
こんにちは。
条件1.●生成した年月日・・・不要。(ただし、チェックも簡単にできるよ、という場合は盛り込んでください)
完全チェックとはなりませんが
A1セルの入力規制で”整数”、”次の値以上”、”1900”
B1セルは同様な方法で1~12の間
C1セルも同様で1~31の間
に規制する事である程度は可能。
この方法での問題は2月31日などを許す事。2,4,6,9月のチェックは無視です。
条件2.●生成されたデータ・・・年月日型」であってほしい。
これは他の回答者さんと同様
D1セルに =Date(A1,B1,C1)
D1セル書式設定は
yyyy/mm/dd aaaa ge/mm/dd
もありかも?
条件3.●年月日の区切・・・10桁で表記したい。
条件2の書式設定にて解決。
この回答へのお礼
ご回答ありがとうございました。
参考にさせていただきます。
No.3ベストアンサー20pt
D1セルに=DATE(A1,B1,C1)と入力します。表示は2008/8/4のように表示されますので「セルの表示形式」の「ユーザー定義」でyyyy/mm/ddと入力します。
この回答へのお礼
ご回答ありがとうございました。
参考にさせていただきます。
D1セルとして
=IF(OR(B1>12,C1>31),"???",A1&"/"&IF(B1<10,"0"&B1,B1)&"/"&IF(C1<10,"0"&C1,C1))
で、月が12より大きい場合または、日が31より大きい場合は???表示。
後は、ご希望通り。
E1セルに =DATEVALUE(D1) とするとシリアル値も出せます。
この回答へのお礼
ご回答ありがとうございました。
参考にさせていただきます。
=date(年,月,日)
・チェックは自動。2009年8月0日は2009年7月31日になる。
・当然日付シリアル値の出力
・自分で書式を選択すること。"yyyy/mm/dd"でいいでしょう。
この回答へのお礼
ご回答ありがとうございました。
参考にさせていただきます。
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示











