DATEDIF は生年月日と今日の差を求めます。単位 "Y" は満年数を返し、今年の誕生日を過ぎたかどうかも正しく反映されます。
=DATEDIF("1990-06-23", TODAY(), "Y")→36今日時点の満年齢。
=DATEDIF(DATE(2000,3,15), DATE(2026,3,14), "Y")→2526 歳の誕生日の前日は、まだ 25 歳として数えられます。
=INT(YEARFRAC(A2, TODAY()))→36DATEDIF を使わない別の方法です。
年数と月数
=DATEDIF(A2, TODAY(), "Y") & "y " & DATEDIF(A2, TODAY(), "ym") & "m"年齢を「36y 0m」のように表示します。
はい。ワークブックを開くたびに TODAY() が再計算されるため、年齢は常に最新の状態に保たれます。
DATEDIF は公式には文書化されていない互換性のための関数で、入力中の候補には表示されません。関数名をすべて入力すれば問題なく動作します。
TODAY() をその日付に置き換えます:=DATEDIF(A2, DATE(2026,12,31), "Y")。
開始日が終了日より後になっています。生年月日を先に、後の日付を 2 番目に指定します。
独自のデータに対応する数式が必要ですか?
やりたいことを普段使っている言葉で説明するだけで、ExcelGPTが数式の作成、解説、検証を行います。無料で開始でき、プラグインも不要です。