Excelで生年月日から年齢を取得または計算する
Excelワークシートに従業員の生年月日のリストがあり、それぞれの年齢を計算したいとします。Excelには、YEARFRACやDATEDIFなどの便利な関数があり、これらを使用して誕生日から簡単に素早く年齢を取得できます。
- YEARFRAC関数を使用して生年月日に基づいて年齢を計算する
- DATEDIF関数を使用して生年月日に基づいて年齢を計算する
- 生年月日に基づいて年齢を年、月、日単位で計算する
- Excelで特定の日にちの年齢を計算する
- 1900年以前の生年月日に基づいて年齢を計算する
- 現在または特定の日付から生年月日に基づいて年齢を計算する驚きの機能
YEARFRAC関数を使用して生年月日に基づいて年齢を計算する
Excelでは、YEARFRAC関数を使用して指定された生年月日から年齢を取得できます。一般的な構文は次の通りです:
- 生年月日: 誕生日の日付。
- TODAY(): この関数は今日の日付を返します。
したがって、以下の数式を空白のセルに入力してください:
そして、この数式を適用したいセルまでフィルハンドルをドラッグすると、すべての年齢が計算され、セルに小数として表示されます。スクリーンショットをご覧ください:
ヒント: YEARFRAC関数を使用した場合、計算結果は小数になります。年齢を整数にするには、INT関数を組み合わせて使用する必要があります。次のようにします:
これで、年齢が整数で表示されます:
DATEDIF関数を使用して生年月日に基づいて年齢を計算する
DATEDIF関数も誕生日を年齢に変換でき、一般的な構文は次の通りです:
- 生年月日: 誕生日の日付。
- TODAY(): この関数は今日の日付を返します。
- y: これは誕生日から現在までの完全な年の数を返します。
では、次の数式を空白のセルに入力またはコピーしてください:
これで、生年月日に基づいてすべての年齢が計算されました。スクリーンショットをご覧ください:
生年月日に基づいて年齢を年、月、日単位で計算する
例えば、生年月日から現在までの正確な年齢(何年、何ヶ月、何日)を取得したい場合、DATEIF関数を1つの数式に連結する必要があります。次のようにします:
これで、次のスクリーンショットのような結果が得られます:
ヒント: 上記の数式を使用する際に0年、0ヶ月、0日を無視したい場合は、IF関数を組み合わせて0をテストすることができます。次の数式を使用してください:
これで、次のスクリーンショットのように、0の値を含まない年、月、日単位で年齢が表示されます:
Excelで特定の日にちの年齢を計算する
時々、現在の日付ではなく、特定の日付までの年齢を取得したい場合があります。その場合、第二引数のTODAY()関数を特定の日付に変更するだけです。例えば:
- 生年月日: 誕生日の日付。
- 特定の日付: 生年月日から年齢を計算したい終了日。
- y: これは誕生日から現在までの完全な年の数を返します。
次の数式を使用してください:
これで、次のスクリーンショットに示すように、生年月日から特定の日付までの年齢が計算されました:
ヒント: 正確な年、月、日単位の年齢を取得するには、次の数式を使用してください:
1900年以前の生年月日に基づいて年齢を計算する
上記の数式は、生年月日が1900年以前の場合、正しく動作しません。1900年以前の日付を入力すると、Excelでは自動的にテキスト形式で保存されるためです。そこで、1900年以前の生年月日がある場合に年齢を取得するためのユーザー定義関数をご紹介します。
1. Alt + F11キーを押してMicrosoft Visual Basic for Applicationsウィンドウを開きます。
2. 次に、挿入 > モジュールをクリックし、次のVBAコードをモジュールウィンドウにコピーします。
1900年以前の生年月日から今日までの年齢を計算する:
Function AgelnNow(ByVal xDate As Variant)
Dim xIA As Integer
xIA = 0
On Error Resume Next
xIA = DateDiff("yyyy", xDate, Now())
If (Month(Now()) < Month(xDate)) Or (Month(xDate) = Month(Now())) Then
If (Day(Now()) < Day(xDate)) Then
xIA = xIA - 1
End If
End If
If xIA = -1 Then
AgelnNow = "Error"
Else
AgelnNow = xIA
End If
End Function
3. 次の数式を空白のセルに入力します: =AgelnNow(A2) (A2は生年月日のセル)
次に、フィルハンドルをドラッグして年齢を取得したいセルに適用すると、次のスクリーンショットに示すように、生年月日から今日までの年齢がすべて計算されます:
ヒント: 現在の日付ではなく、死亡日までの年齢を取得する必要がある場合は、次のコードを使用してください:
1900年以前の生年月日から死亡日までの年齢を計算する:
Function Age(ByVal StartDate As Variant, ByVal EndDate As Variant)
Dim xIA As Integer
xIA = 0
On Error Resume Next
xIA = DateDiff("yyyy", StartDate, EndDate)
If (Month(EndDate) < Month(StartDate)) Or (Month(StartDate) = Month(EndDate)) Then
If (Day(EndDate) < Day(StartDate)) Then
xIA = xIA - 1
End If
End If
If xIA = -1 Then
Age = "Error"
Else
Age = xIA
End If
End Function
そして、次の数式を使用します: =Age(A2,B2) (A2は生年月日のセル、B2は死亡日セル)結果は次のスクリーンショットに示されています:
現在または特定の日付から生年月日に基づいて年齢を計算する驚きの機能
Kutools for Excelは、Date & Time Helper機能という便利なツールをサポートしており、これを使用すると、現在の日付または特定の日付に基づいて年齢を計算でき、複雑な数式を覚える必要がありません。無料試用版のKutools for Excelをダウンロードするにはここをクリック!
関連する関数:
- YEARFRAC:
- これは、2つの日付間の分数年を表す小数値を返します。
- TODAY()
- これは現在の日付値を返します。
- INT()
- これは値の整数部分を返します。
- DATEDIF
- この関数は、2つの指定された日付間の年、月、または日の数を返します。
関連する年齢計算記事:
- Excelで生年月日を年齢に迅速に変換する
- たとえば、Excelにさまざまな生年月日のデータ範囲があり、それを正確な年齢値として表示する必要がある場合、どのように解決しますか?
- Googleスプレッドシートで生年月日から年齢を計算する
- Googleスプレッドシートで生年月日から年齢を計算しようとしたことはありますか?この記事では、この作業を迅速かつ簡単に解決するためのいくつかの数式を紹介します。
- ExcelでID番号から年齢を計算する
- 例えば、13桁の数字を持つID番号のリストがあり、最初の6桁が生年月日であるとします。例えば、ID番号9808020181286は1998/08/02が生年月日です。
- 生年月日から年齢を年、月、日単位で計算する
- 与えられた生年月日の列がある場合、その生年月日に基づいて各年齢を年、月、日単位または小数で計算できますか?下のスクリーンショットに示されているように。
- Excelで特定の日または将来の日にちの年齢を計算する
- 例えば、ある人の生年月日があり、将来または特定の日付に基づいてその人の年齢を計算する必要がある場合、次の方法が詳細にステップごとに役立ちます。
最高のOffice生産性ツール
Kutools for Excel - あなたを群衆から際立たせるツール
🤖 | Kutools AI アシスタント: 次の要素に基づいてデータ分析を革新:インテリジェント実行 | コード生成 | カスタム数式の作成 | データの分析とチャートの生成 | Kutools 拡張機能の呼び出し… |
人気の機能:重複の検索、ハイライト、または識別 | 空白行の削除 | データを失うことなく列やセルを結合 | 数式なしで丸める ... | |
スーパーフィルター:複数条件 | 複数値 | 複数シート間 | ファジーマッチ... | |
高度なドロップダウンリスト:簡単なドロップダウンリスト | 依存するドロップダウンリスト | 複数選択可能なドロップダウンリスト... | |
列マネージャー:特定の数の列を追加 | 列の移動 | 非表示列の可視性ステータスの切り替え | 列を比較して同じおよび異なるセルを選択 ... | |
注目機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブックとシートの管理 | オートテキスト ライブラリ (Auto Text) | 日付ピッカー | データの統合 | セルの暗号化/復号化 | リストによるメール送信 | スーパーフィルター | 特殊フィルタ(太字/斜体/取り消し線のフィルタリング...) ... | |
トップ15のツールセット: 12 のテキストツール(テキストの追加、特定の文字を削除 ...) | 50 以上 のグラフタイプ(ガントチャート ...) | 40 以上の実用的な数式(誕生日に基づいて年齢を計算 ...) | 19 の挿入ツール(QRコードの挿入、パスからの画像挿入 ...) | 12 の変換ツール(単語に変換する、通貨変換 ...) | 7 つの結合と分割ツール(高度な行のマージ、Excelセルの分割 ...) | ... さらに |
Kutools for Excelは300以上の機能を誇り、必要なものがワンクリックで手に入ります...
Office Tab - Microsoft Office(Excel含む)でのタブ形式の閲覧と編集を有効にする
- 数十の開いている文書間を1秒で切り替え!
- 毎日数百回のマウスクリックを減らし、マウス手にさよならを告げる。
- 複数の文書を閲覧・編集する際に、生産性が50%向上します。
- Chrome、Edge、Firefoxのように、Office(Excel含む)に効率的なタブをもたらします。