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

はじめまして。
エクセルで、誕生日から現在の年齢を導きたいのですが、どうすればいいですか?

DATEIF関数を使えばいいとは思うのですが、一つ問題があって、
誕生日が、 S30-1-1  というふうに、全角文字列で入力されているのです(TT)

途中に列が挿入されても全然かまいませんので、 なんとか

   A     B    C
  名前   誕生日  年齢


のような形にできないでしょうか?
よろしくお願いします。

A 回答 (3件)

こんばんは



>DATEIF関数を使えばいいとは思うのですが、
>一つ問題があって、誕生日が、 S30-1-1
>というふうに、全角文字列で入力されているのです
DATEDIF()関数です(Dか1文字足りません)
全角でも対応するはずですから
=DATEDIF(B1,TODAY(),"Y")
となります。

>「'」 と 「スペース」 まで入っています。
>そのためか、エラーが返ってきてうまくいきません。
「'」は数式バーには表示されるけどセル表示には
現れないものでしょうか? であれば書式設定では
なく直接入力で文字列を指定したもので、特に処理
する必要はありません!
スペースについては半角か全角か不明なので全て
半角にしてから処理(削除)する式
SUBSTITUTE(ASC(B1)," ",) を使って前の式にあて
はめると

=DATEDIF(SUBSTITUTE(ASC(B1)," ",),TODAY(),"Y")
となります
    • good
    • 0
この回答へのお礼

ありがとうございました!できました!
1週間くらい格闘してて、どうしようもなくなっていました。すごく助かりました。

またなにかあったらよろしくお願いします。

お礼日時:2003/04/02 21:43

#1です。

補足です。

挿入した列が邪魔なら、列を非表示にしてみてください。
(列番号を右クリックで、「表示しない」をクリック)
    • good
    • 0

列が挿入されても良いのなら、BとCの間に1列挿入したとして



C列に"=ABS(B1)"と数式を入力し、「セルの書式設定」の「表示形式」で「日付」を選択します。

D列に"=TODAY()-C1"と数式を入力し、「セルの書式設定」の「表示形式」で「ユーザー定義」を選択し、「y」と入力します。

これで年齢が求められると思います。
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
セルをよくみると、
 'S30- 1- 1
のような形で、「'」 と 「スペース」 まで入っています。
そのためか、エラーが返ってきてうまくいきません。
ためしに、' とスペースなしで新たに入力してやってみるとうまくいったのですが・・・
なんとかならないでしょうか(泣)
置換?かなにかつかえばいいのでしょうか?
申し訳ないのですがよろしくお願いします。

お礼日時:2003/04/02 21:13

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