- ベストアンサー
<エクセル>誕生日から年齢 ちょっと問題が・・
はじめまして。 エクセルで、誕生日から現在の年齢を導きたいのですが、どうすればいいですか? DATEIF関数を使えばいいとは思うのですが、一つ問題があって、 誕生日が、 S30-1-1 というふうに、全角文字列で入力されているのです(TT) 途中に列が挿入されても全然かまいませんので、 なんとか A B C 名前 誕生日 年齢 のような形にできないでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは >DATEIF関数を使えばいいとは思うのですが、 >一つ問題があって、誕生日が、 S30-1-1 >というふうに、全角文字列で入力されているのです DATEDIF()関数です(Dか1文字足りません) 全角でも対応するはずですから =DATEDIF(B1,TODAY(),"Y") となります。 >「'」 と 「スペース」 まで入っています。 >そのためか、エラーが返ってきてうまくいきません。 「'」は数式バーには表示されるけどセル表示には 現れないものでしょうか? であれば書式設定では なく直接入力で文字列を指定したもので、特に処理 する必要はありません! スペースについては半角か全角か不明なので全て 半角にしてから処理(削除)する式 SUBSTITUTE(ASC(B1)," ",) を使って前の式にあて はめると =DATEDIF(SUBSTITUTE(ASC(B1)," ",),TODAY(),"Y") となります
その他の回答 (2)
- k-mucho
- ベストアンサー率55% (24/43)
#1です。補足です。 挿入した列が邪魔なら、列を非表示にしてみてください。 (列番号を右クリックで、「表示しない」をクリック)
- k-mucho
- ベストアンサー率55% (24/43)
列が挿入されても良いのなら、BとCの間に1列挿入したとして C列に"=ABS(B1)"と数式を入力し、「セルの書式設定」の「表示形式」で「日付」を選択します。 D列に"=TODAY()-C1"と数式を入力し、「セルの書式設定」の「表示形式」で「ユーザー定義」を選択し、「y」と入力します。 これで年齢が求められると思います。
お礼
早速の回答ありがとうございます。 セルをよくみると、 'S30- 1- 1 のような形で、「'」 と 「スペース」 まで入っています。 そのためか、エラーが返ってきてうまくいきません。 ためしに、' とスペースなしで新たに入力してやってみるとうまくいったのですが・・・ なんとかならないでしょうか(泣) 置換?かなにかつかえばいいのでしょうか? 申し訳ないのですがよろしくお願いします。
お礼
ありがとうございました!できました! 1週間くらい格闘してて、どうしようもなくなっていました。すごく助かりました。 またなにかあったらよろしくお願いします。