アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になります。
関数で以下のようなものを作りたいと思います。

セルA1,B1,C1にそれぞれ2008、8、4と「年」「月」「日」データが入っています。
D1に関数を入力することによってD1の内容を「2008/08/04」というように年月日のデータに換算したいのです。

次の条件を加えてください。
●生成した年月日データが「日付としてありえないもの」にならないように、年、月、日の元データが入っているA1,B1,C1の内容については人為的チェックを行う。よって生成する関数側でそれらのチェックは不要。
(ただし、チェックも簡単にできるよ、という場合は盛り込んでください)
●生成されたデータを元にして曜日を求めたり、任意の2日を選んで経過日数を計算したり、和暦に変換するなどしたいので、「生成された結果そのものがすでに年月日型」であってほしい。
(よって単純に&マークで連結しただけではダメ・・・・ですよね)
●年月日の区切りは"/"記号で。月、日が一桁の場合は10の位に0を挿入していかなる日付も"/"記号含めて10桁で表記したい。


いただいたコメントには必ずお礼コメント差し上げます。
もっとも要望どおりの回答には必ずポイントを差し上げます。
よろしくお願いします。

A 回答 (4件)

D1セルに=DATE(A1,B1,C1)と入力します。

表示は2008/8/4のように表示されますので「セルの表示形式」の「ユーザー定義」でyyyy/mm/ddと入力します。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
参考にさせていただきます。

お礼日時:2009/08/04 09:40

こんにちは。


条件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の書式設定にて解決。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
参考にさせていただきます。

お礼日時:2009/08/04 10:31

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) とするとシリアル値も出せます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
参考にさせていただきます。

お礼日時:2009/08/04 09:40

=date(年,月,日)



・チェックは自動。2009年8月0日は2009年7月31日になる。
・当然日付シリアル値の出力
・自分で書式を選択すること。"yyyy/mm/dd"でいいでしょう。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
参考にさせていただきます。

お礼日時:2009/08/04 09:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!