Googleスプレッドシートで年齢を計算する方法(年、月、日)
生年月日から年齢を計算するGoogleスプレッドシートのシンプルな数式を学びましょう。完了した年数、年+月+日、特定の日付時点での年齢など。コピペ可能な例と一般的な修正方法も含まれています。
Googleスプレッドシートで年齢を計算する数式が必要ですか?以下に、生年月日から年齢を計算する最も実用的な方法をご紹介します。完了した年数、または正確な年齢(年、月、日)として計算できます。すべての例はコピペ可能です。
始める前に:どのような「年齢」が必要ですか?
- 完了した年数(例:31歳)— 人事、フォーム、資格確認などで一般的です。
- 正確な年齢(例:31歳4ヶ月2日)— 医療、教育、詳細なレポート作成などで役立ちます。
1) DATEDIFを使った年単位の年齢計算(完了した年数)
生年月日がA2に入っている場合、今日現在の満年齢を返します:
=DATEDIF(A2, TODAY(), "Y")
2) DATEDIFを使わない年単位の年齢計算
DATEDIFに頼らない数式を好む人もいます。このバージョンでは年数を計算し、まだ今年の誕生日を迎えていない場合は修正します:
=YEAR(TODAY())-YEAR(A2)-IF(DATE(YEAR(TODAY()),MONTH(A2),DAY(A2))>TODAY(),1,0)
3) 正確な年齢:年 + 月 + 日 (Y / YM / MD)
これはDATEDIFを使った古典的な「正確な年齢」のパターンです:
=DATEDIF(A2, TODAY(), "Y")
=DATEDIF(A2, TODAY(), "YM")
=DATEDIF(A2, TODAY(), "MD")
一つのセルで読みやすいテキストに結合するには:
=DATEDIF(A2,TODAY(),"Y")&"年"&DATEDIF(A2,TODAY(),"YM")&"ヶ月"&DATEDIF(A2,TODAY(),"MD")&"日"
4) 特定の日付時点での年齢計算(TODAYではない)
特定の日付(例:試験日や契約日など)時点での年齢が必要な場合は、その基準日をB2に入れ、次の数式を使用します:
=DATEDIF(A2, B2, "Y")
正確な年齢バージョンも同じように機能します(TODAY()をB2に置き換えます)。
5) よくある問題(と簡単な修正方法)
- #VALUE! は通常、生年月日がテキストとして保存されていることを意味します。セルを適切な日付形式に変換して修正してください。
- 未来の生年月日はエラーを引き起こします。
IF(A2>TODAY(),"", ...)のようなガードを追加してください。 - 空のセル:数式を空チェックで囲みます:
IF(A2="","", ...)。
簡単な動作確認
スプレッドシートの結果を確認したい場合は、こちらのオンライン計算ツールもご利用いただけます: Calculate Age Online。
関連情報(Excel版)
スプレッドシートではなくExcelを使用している場合は、以下をご覧ください: Excelで年齢を計算する方法。
よくある質問
DATEDIFはGoogleスプレッドシートで動作しますか?
はい、動作します。Googleスプレッドシートは、Excelで一般的に使用されるのと同じ単位コード("Y", "M", "D", "YM", "MD")でDATEDIFをサポートしています。
スプレッドシートで年齢を年と月で計算するにはどうすればよいですか?
年数にはDATEDIF(DOB, TODAY(), "Y")を、残りの月数にはDATEDIF(DOB, TODAY(), "YM")を使用し、それらを組み合わせます。
特定の日付時点での年齢を計算するにはどうすればよいですか?
TODAY()を基準日を含むセル(例:DATEDIF(A2, B2, "Y"))に置き換えます。