Note: The other languages of the website are Google-translated. Back to English

Excelは、生年月日から年齢を取得または計算します

Excelワークシートに従業員の生年月日のリストがある場合は、ここで、それぞれの年齢を計算します。 Excelには、YEARFRACやDATEDIFなど、誕生日から年齢をすばやく簡単に取得するのに役立つ便利な関数がいくつかあります。


YEARFRAC関数を使用して生年月日に基づいて年齢を計算します

Excelでは、YEARFRAC関数を使用すると、指定された生年月日から年齢を取得できます。一般的な構文は次のとおりです。

=YEARFRAC(birthdate, TODAY())
  • birthdate:誕生日の日付。
  • TODAY():この関数は今日の日付を返します。

したがって、次の数式を空白のセルに使用してください。

=YEARFRAC(B2,TODAY())

次に、塗りつぶしハンドルをこの数式を適用するセルまでドラッグします。すべての年齢が計算され、セルにXNUMX進数として表示されます。スクリーンショットを参照してください。

ヒント:YEARFRAC関数を使用して計算された結果はXNUMX進数です。年齢番号を整数にするには、INT関数を次のように組み合わせる必要があります。

=INT(YEARFRAC(B2,TODAY()))

そして、あなたは整数として年齢を取得します:


DATEDIF関数を使用して生年月日に基づいて年齢を計算します

DATEDIF関数は、生年月日を年齢に変換することもできます。一般的な構文は次のとおりです。

=DATEDIF(birthdate, TODAY(), "y")
  • birthdate:誕生日の日付。
  • TODAY():この関数は今日の日付を返します。
  • y:生年月日から現在の日付までの完全な年数を返します。

ここで、次の数式を空白のセルに入力またはコピーしてください。

=DATEDIF(B2, TODAY(), "y")

そして、すべての年齢は生年月日に基づいて計算されています。スクリーンショットを参照してください。


年、月、日での生年月日に基づいて年齢を計算します

生年月日から現在までの年数、月数、日数など、正確な年齢を知りたい場合。 DATEIF関数は、次のようにXNUMXつの数式に連結する必要があります。

=DATEDIF(B2,TODAY(),"Y") & " Years, " & DATEDIF(B2,TODAY(),"YM") & " Months, " & DATEDIF(B2,TODAY(),"MD") & " Days"

そして、次のスクリーンショットのような結果が得られます。

ヒント:上記の式を適用するときに0年、月、または日を無視する場合は、IF関数を組み合わせて0をテストできます。 この式を使用してください:

=IF(DATEDIF(B2, TODAY(),"y")=0,"",DATEDIF(B2, TODAY(),"y")&" Years, ")& IF(DATEDIF(B2, TODAY(),"ym")=0,"",DATEDIF(B2, TODAY(),"ym")&" Months, ")& IF(DATEDIF(B2, TODAY(),"md")=0,"",DATEDIF(B2, TODAY(),"md")&" Days")

そして、必要に応じて以下のスクリーンショットが表示されます。すべての年齢は、0の値なしで年、月、日で表示されます。


Excelで特定の日付の年齢を計算する

現在の日付ではなく、生年月日から特定の日付までの年齢を取得したい場合があります。この場合、XNUMX番目の引数のTODAY()関数を特定の日付に変更する必要があります。 といった:

=DATEDIF(birthdate, specific_date, "y")
  • birthdate:誕生日の日付。
  • specific_date:生年月日から年齢を計算する終了日。
  • y:生年月日から現在の日付までの完全な年数を返します。

次の式を使用してください。

=DATEDIF(B2, C2, "y")

次に、次のスクリーンショットに示すように、年齢は生年月日から特定の日付まで計算されています。

ヒント:年齢の正確な年、月、日を取得するには、次の式を使用してください。

=DATEDIF(B2, C2,"Y") & " Years, "& DATEDIF(B2,C2,"YM") & " Months, "&DATEDIF(B2,C2, "MD") & " Days"


1900年以前の日付の誕生に基づいて年齢を計算します

生年月日が1900年より前の場合、上記の数式は正しく機能しません。1900年より前の日付を入力すると、Excelにテキスト形式で自動的に保存されるためです。 したがって、ここにユーザー定義関数があり、生年月日が1900年より前の場合に年齢を取得するのに役立ちます。

1。 プレス Altキー+ F11 キーを押して アプリケーション向け Microsoft Visual Basic 窓。

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

そして、次の式を使用します。 =年齢(A2、B2) (A2 は生年月日セルであり、 B2 以下のスクリーンショットに示すように結果を取得するには、死亡日のセルです)。


驚くべき機能を備えた現在または特定の日付からの日付の誕生に基づいて年齢を計算します

Kutools for Excel 便利なツールをサポートします- 日付と時刻のヘルパー 面倒な数式を覚えることなく、現在の日付または特定の日付からの日付の誕生に基づいて年齢を計算するのに役立つ機能。 クリックしてKutoolsfor Excelを無料トライアルでダウンロードしてください!


使用される相対関数:

  • YEARFRAC:
  • XNUMXつの日付の間の小数年を表すXNUMX進値を返します。
  • 今日()
  • 現在の日付値を示します。
  • INT()
  • 値の整数部分を返します。
  • DATEDIF
  • この関数は、指定されたXNUMXつの日付の間の年、月、または日数を返します。

相対年齢計算記事:

  • ExcelでID番号から年齢を計算する
  • 13桁の数字を含むID番号のリストがあり、最初の6つの数字が生年月日であるとします。 たとえば、ID番号9808020181286は、生年月日が1998/08/02であることを意味します。

最高のオフィス生産性ツール

Kutools forExcel-群衆から目立つのに役立ちます

毎日の仕事を迅速かつ完璧に完了させたいですか? Kutools for Excel は、300 の強力な高度な機能 (ワークブックの結合、色による合計、セルの内容の分割、日付の変換など) を提供し、80% の時間を節約します。

  • 1500 の作業シナリオ用に設計されており、80% の Excel の問題を解決するのに役立ちます。
  • 毎日何千ものキーボードとマウスのクリックを減らし、疲れた目と手を和らげます。
  • 3分でExcelのエキスパートになります。 面倒な数式やVBAコードを覚えておく必要はもうありません。
  • 30日間無制限の無料トライアル。 60日間の返金保証。 2年間の無料アップグレードとサポート。
Excelのリボン(Kutools for Excelがインストールされている)

Officeタブ-MicrosoftOffice(Excelを含む)でタブ付きの読み取りと編集を有効にする

  • 数十の開いているドキュメントを切り替えるのにXNUMX秒!
  • マウスの手に別れを告げて、毎日何百ものマウスクリックを減らしてください。
  • 複数のドキュメントを表示および編集する際の生産性が 50% 向上します。
  • Chrome、Firefox、新しいInternet Explorerと同じように、効率的なタブをOffice(Excelを含む)にもたらします。
Excelのスクリーンショット(Officeタブがインストールされている場合)
コメントを並べ替える
コメント (1)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
あなたの年齢機能に欠陥があるのではないかと思いますか? A3とB3を見ると、例では8年15月1776日生まれ(15年1776月1816日)で5/21/21(1816年3月40日)に死亡したとしています。彼らはまだ39歳ではありません。 彼らはまだXNUMX歳です。何かが正しく計算されていないようですか? 私はあなたの考えを見ることに興味があり、あなたの返事を楽しみにしています-ダグH.
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護