• ベストアンサー

エクセルで歳の出し方

初心者なので、仕事で困ってます!教えて下さい!! エクセルで、誕生日から、今年何歳かという結果を出したいです。 DATEDIFの関数を使ってみましたが、現在の歳は出ました。 そうでなく、今年、何歳かという結果を出したいのですが、どんな式になるのでしょうか?? ちなみに、データは西暦で入っています。 (例1970/9/26) ぜひ教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • shiotan99
  • ベストアンサー率68% (140/203)
回答No.1

こんにちは~ 誕生日が A1だとして、 =YEAR(TODAY())-YEAR(A1) ということでしょうか? セルの表示形式は 「標準」 にしてください。

yukarinnyuka
質問者

お礼

すっご~い、出来ました!! そうそう、こうしたかったのです。 ありがとうございました。

その他の回答 (3)

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.4

こんにちは。KenKen_SP です。 すでに回答はでておりますので、余談ですが、、、 いつ加齢するかの時期については 【一般の解釈】満年齢は誕生日に加齢する 【法の解釈】 満年齢は誕生日の前日に加齢する の2つの解釈があり、そのデータを適用する対象により使い分ける 必要があります。通常、社内的な労務管理や顧客管理では前者で 問題ないのですが、法律の絡む業務に使われるデータでは、注意が 必要です。 ご参考までに。

yukarinnyuka
質問者

お礼

あくまでも、社内管理です。 でも、参考になりました。 ありがとうございました。

  • 69fkazuyt
  • ベストアンサー率37% (25/67)
回答No.3

>現在の歳は出ました。 >今年、何歳かという結果を出したいのですが 今年、元になる日付けを  =TODAY() で設定していませんか?  もしそうであれば =TODAY() を設定しているセルに求めたい年の最後の日付を入力すれば良いのでは?  例【今年であれば 2005/12/31 】

yukarinnyuka
質問者

お礼

TODAYでは設定していません。普通に入力してあります。 そして、誕生日のデータから他のセルに歳を求めたかったのです。ありがとうございました。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

今何歳かが =DATEDIF(誕生日,now(),"Y") ですから今年何歳かといえば、 12月31日現在何歳かですから =DATEDIF(誕生日,DATE(YEAR(NOW()),12,31),"Y") でいいんじゃないすか?

yukarinnyuka
質問者

お礼

こちらの式でもできました!! すごい!ありがとうございました。

関連するQ&A

  • エクセルで経過年を表示したい。

    エクセル2000。経過年を表示したい。=DATEDIF(DAYEVALUE(L27),NOW(),"Y")で出ません。出るシートもあったのですが、リターンキーを押すとで=VALUE!になってしまいます。希望は和暦入力ですが、西暦でもかまいません。ちなみに西暦でもだめでした。

  • エクセル2007で、DATEDIF関数が認識しない

    現在、パソコンにエクセル2007が入っています。 本(よくわかるエクセル2007)を参照に、勉強しているのですが、DATEDIF関数が認識しないようなのです… =DATE まで、直接入力すると、選択できる関数として、「=DATE」と「=DATEVALUE」しか表示されません。 ※ 添付画像は、=DAまでを入力した時の選択できる関数です。 =DATEDIFが出てこないので、直接、=DATEDIFまで入力し、=DATEDIF(開始日,終了日,"単位")を入れて、実行キーを押すと、当然ながら?#NAME?と出てしまいます。 そこから想像するに、自分のエクセル2007には、=DATEDIF関数は入っていないのか、又は、=DATEDIF関数が使えるようになっていない?と想像したのですが、解決方法が解りません。 原因と解決策の解る方、是非、アドバイスください。 ※ 解決策…自分のエクセル2007には、=DATEDIF関数は入っていない場合、=DATEDIF関数を追加する方法 ※ 解決策…、=DATEDIF関数が使えるようになっていない場合、使えるようにする方法 ※ 現在、OS:Windows7、エクセル2007を使用しています。

  • EXCEL DATEDIF関数について

    質問があります。 EXCELのDATEDIF関数で日付の期間内の年数、月数、日数、時間を2つのデーターから算出したいのですが、うまくできません。 そもそもDATEDIF関数では時間に対しては対応できないのでしょうか? また算出できる方法が有れば教えて頂けないでしょうか? データー基(例) A,14/04/30 00:01 B,14/05/02 05:03 宜しくお願い致します。

  • エクセルDATEDIFで「○歳○○ヶ月」は?

    エクセルで誕生日・入社経過年数表を作りたいのです。現在何歳・入社して何年などは下記の関数でよいと思うのですが, =DATEDIF(N5,TODAY(),"Y") DATEDIF(N5,TODAY(),"M") 「○歳○○ヶ月」「○年○○ヶ月」といったふうに,経過年数と月数が同時に表示することはできないのでしょうか。

  • エクセルで年齢の計算の仕方

    エクセルで年齢を計算するのにDATEDIF(A1,today(),"Y")が良く使われますが、 法律上正確に考えるとDATEDIF(A1,today()+1,"Y")が正しいのではないでしょうか。 このようなことを解説したもの(サイト)が見つからないので質問しました。 ちなみに、年齢加算は法律上、誕生日の前日となっています。 それに基づくとDATEDIF(A1,today()+1,"Y")だと思いますが、この書き方だと計算結果に何か問題が発生するでしょうか。

  • エクセルで日付け表示

    エクセルで日付け表示にすると西暦まで入力されてしまいます。 たとえば 4/8で打ち込むと4月8日と表示はされますが データーとしては打ち込んだ西暦が反映されてしまいます。 この西暦を反映させない方法はありませんか? 誕生日で並べ替えがしたいのですが打ち込んだ西暦が反映されてしまい 日付順に並べ替えられません。よろしくお願いします。

  • Excelで年月日データから下二桁だけを取り出したい。

    Excelで年月日データから下二桁だけを取り出したい。 お世話になります。 Excel2000を使用中です。 まあ、この質問に関してはあんまりバージョンは関係ないと思いますが。 セル(例としてA1)に日付データが入っています。 このセルから西暦年の下二桁だけ取り出したいです。 Year関数を使って =year(A1) とすると西暦年4桁が得られます。 4桁では困るのです。2桁にしたい。 どうしたらよいでしょう? 多分、Text関数を使うと思うのだけれどうまくいかない。 注意 Year関数で得られた結果から2000を減算するのはNG 事情があってセルの書式変更はできない。よってセルの書式を使う方法はNG よろしくおねがいします。

  • EXCELで西暦と年齢が連動させるには

    最初に個人の誕生日を西暦にいれて、そこから年齢を自動的に 表示する関数は理解できていますが、個人の西暦でなく、例えば、今年の西暦2011年を入れると、作成すみの個人の年齢が変更できる方法がありましたら教えてください。

  • excel 条件検索後、空白を除いて整列

     お忙しいところありがとうございます。エクセルで以下のような表があるとします。 列 名前    生年月日   年       500歳以上 浦島太郎  1700/8/17   datedif関数   =if(c1>500,c1,"") かぐや姫  1400/9/6    datedif関数   =if(c2>500,c2,"") 一寸法師  1500/1/1    datedif関数   =if(c3>500,c3,"")   :       :       :        : と、いうような感じで、名前がずらっと200以上(数は毎回可変)は並んでいます。 そして、年齢をdatedif関数で割り出し、さらにそれがある基準を超えたらその年を表示、超えなければ空白を表示する、という風にしています。(この例では「500歳以上」の列) 問題はここからで、「500歳以上」の列に表示されているデータだけの、「名前」の列を別のシートに表示したいのです。その際、空白セルがあるデータはとばして、年齢だけが入っているデータの列を上に詰めて表示させたいのです(この例では、かぐや姫と一寸法師が該当)  わかりにくい質問で申し訳ありません。関数でもVBAでもかまいませんのでどうかよろしくお願い致します。

  • EXCELのdays360とDATEDIF関数について

    現在text形式のデータをエクセル変換して集計してますが、日付データ(yyyy/mm/dd型)のデータ2つの間の日数を計算しようと思い、days360を使ってみましたが、返される値が『1901/01/日数』となってしまいます。同様にDATEDIFではエラーが出ます。元がテキスト形式から変換したデータで、量も膨大なため、いちいち""もかけられず、かといってTEXT関数やIF関数を使ってしたごしらえをすると容量が馬鹿みたいにでかくなってしまいます。 days360かdatedif関数のみでうまく日数のみ表現するにはどうしたらいいのでしょう?

専門家に質問してみよう