プロが教える店舗&オフィスのセキュリティ対策術

エクセルの操作についてお知恵を貸していただきたく、
よろしくお願いします。

シート1で和暦の生年月日をプルダウン式で選択し、
シート2でシート1で選択した生年月日の表示、同時に横のセルに
年齢を表示させたいと考えています。

試しに、「データの入力規則」より以下のリストを作成しました。
(1)A1に「明治、大正、昭和、平成」の和暦リスト
(2)B1に「1~63」の年リスト
(3)D1に「1~12」の月リスト
(4)F1に「1~31」の日リスト

が、シート2に生年月日を表示させることはできても、
年齢計算が出来ません。
(和暦・年・月・日を別々のセルに表示させる形になり、
生年月日として認識されないため)

フォームコントロールのコンボボックスなどを使えば
実現できるのでしょうか?

何か良い方法があればご教授いただきたいです。

もしvbaなどで実現可能な場合は、マクロの式など教えて
いただけると助かります。

A 回答 (2件)

(1)A1に「明治、大正、昭和、平成」の和暦リスト


(2)B1に「1~63」の年リスト
(3)D1に「1~12」の月リスト
(4)F1に「1~31」の日リスト

があるなら、生年月日を日付として認識させるために、どこかのセルに

=VALUE(A1&B1&"年"&D1&"月"&F1&"日")

として、そのセルの書式を「日付」にしてみてください。
満年齢をだすには、仮にそのせるがB7だとしたら

=DATEDIF(B7,TODAY(),"Y")

ですね。
    • good
    • 0
この回答へのお礼

バラバラのセルを1つにつなげて生年月日と認識させる
ことが出来る方法があるなんて目から鱗でした。
教えていただいた方法でやりたいことが実現できました。
ありがとうございました。

お礼日時:2008/02/06 12:09

生年月日


A1=Sheet1!A1&Sheet1!B1&"年"&Sheet1!C1&"月"&Sheet1!D1&"日"
であるなら
年齢
B1=DATEDIF(DATEVALUE(A1),TODAY(),"Y")
    • good
    • 1
この回答へのお礼

早速のご回答ありがとうございました!!
教えていただいた通りにやったら出来ました。
こんなに簡単にできるものだったのですね。
勉強になりました。

お礼日時:2008/02/06 12:08

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