dポイントプレゼントキャンペーン実施中!

EXCELで、日付としてではなく数値8桁で入力されているデータを基に誕生日を割り出すことが可能ですか。例えば、2005/8/1ではなく20050801という数値から満1歳5ヶ月を導くことが出来ますか。今データ整理をしていてここにぶち当たって戸惑っています。どなたか教えてください。

A 回答 (5件)

ちょっと長いですが、A1セルに20050801と入っているとき


="満"&DATEDIF(DATE(LEFT(A1,4),MID(A1,5,2),RIGHT(A1,2)),TODAY(),"Y")&"歳"&DATEDIF(DATE(LEFT(A1,4),MID(A1,5,2),RIGHT(A1,2)),TODAY(),"YM")&"ヶ月"
とすると、「満1歳5ヶ月」と表示されます。
    • good
    • 0
この回答へのお礼

素晴らしい!感激! 回答頂いたものをコピーして表示させることができました。困り果てた末に、「教えてgoo」に先程新規登録させて頂き半信半疑で初めての質問でした。早速ご回答頂き本当に有難うございました。edomin様始め皆様、今後ともよろしくお願いいたします。

お礼日時:2007/01/14 11:52

 数値8桁で固定されているので分解する方法又は


               部分的に抽出する方法を取れば良い



抽出元データ=Mid(データ、抽出開始位置、文字数)

A1=Mid(A2,5,2)
A1に20050801ならばA2に月が入る
まあこれで 年、月、日を分解すればあとは引き算すれば出てきますね

別に分解する方法は省略
    • good
    • 0
この回答へのお礼

有難うございました。勉強させて頂きます。

お礼日時:2007/01/14 12:23

可能ですよ。


但し、常に 20050801 の形式 [西暦(四桁)] [月(二桁)] [日(二桁)]
を守ることが、条件です。
どれか一つでも、桁数が増減したらだめですよ。また、数字以外の文字が入ってもだめですよ。

文字列変数[例: Left(string,length),Mid(string,length), Right(string,length)] を使用します。
詳しくは、EXCELのHELPを参照してください。
尚、EXCELに関することなら下記をお勧めします。
  他にも、沢山あります。

その1. http://www.moug.net/main/faq.htm
その2. http://www.officetanaka.net/sitemap.htm
    • good
    • 0
この回答へのお礼

有難うございました。照会頂いたhttpにもアクセスして勉強させて頂きます。

お礼日時:2007/01/14 12:20

A1に誕生日が入っているとして、雑かもしれませんが、私なら


=DATE(INT(A1/10000),INT(A1/100)-INT(A1/10000)*100,A1-INT(A1/100)*100)
で日付形式にし、これを元に年齢を計算します。
年齢の計算方法はこちらを参考に。
http://www33.tok2.com/home/masaya/excel1.html
    • good
    • 0
この回答へのお礼

またまた有難うございます。勉強させて頂きます。

お礼日時:2007/01/14 12:17

こんにちは。



A1:
20050801


=DATEDIF(,TODAY()-TEXT(A1,"00!/00!/00"),"y")&"歳"&DATEDIF(,TODAY()-TEXT(A1,"00!/00!/00"),"ym")&"ヶ月"

この計算は、「満」で計算されています。
    • good
    • 0
この回答へのお礼

有難うございました。色々な方法があったのですね。勉強させて頂きます。

お礼日時:2007/01/14 12:15

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