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

Excelで1年1月1900日より前の年齢を計算する方法は?

Excelでは、1年1月1900日より前の日付を正しく入力および計算できません。 1年1月1900日より前に生まれて死亡した人の年齢を計算する場合、通常、Excelでは正しい計算が得られません。 しかし、この記事では、Excelで1年1月1900日より前の年齢を計算するのに役立つトリックがあります。

VBAを使用して1年1月1900日より前の年齢を計算する

Kutools forExcelで誕生日ごとの年齢を計算する 良いアイデア3


矢印青い右バブル VBAを使用して1年1月1900日より前の年齢を計算する

これは、1年1月1900日より前の年齢をすばやく計算するのに役立つVBAコードです。

1.空白のセルを選択してその人の誕生日を入力し、次に別のセルを選択して今日の日付を入力するか、必要に応じて人が死亡した日付を入力します。 スクリーンショットを参照してください:
docは1900年以前の年齢を計算します1

2.次にを押します Altキー+ F11 有効にするキー アプリケーション向け Microsoft Visual Basic 窓。

3。 クリック インセット > モジュール、VBAの下を新しいものに貼り付けます モジュール 窓。

VBA:1年1月1900日より前の年齢を計算する

Public Function AgeFunc(SDate As Variant, EDate As Variant) As Long
'UpdatebyExtendOffice20160429
    Dim xSMonth As Integer
    Dim xSDay As Integer
    Dim xSYear As Integer
    Dim xEMonth As Integer
    Dim xEDay As Integer
    Dim xEYear As Integer
    Dim xAge As Integer
    If Not GetDate(SDate, xSYear, xSMonth, xSDay) Then
        AgeFunc = "Invalid Date"
        Exit Function
    End If
    If Not GetDate(EDate, xEYear, xEMonth, xEDay) Then
        AgeFunc = "Invalid Date"
        Exit Function
    End If
    xAge = xEYear - xSYear
    If xSMonth > xEMonth Then
        xAge = xAge - 1
    ElseIf xSMonth = xEMonth Then
        If xSDay > xEDay Then xAge = xAge - 1
    End If
    If xAge < 0 Then
        AgeFunc = "Invalid Date"
    Else
        AgeFunc = xAge
    End If
End Function

Private Function GetDate(ByVal DateStr As String, Y As Integer, M As Integer, D As Integer) As Boolean
    Dim I As Long
    Dim K As Long
    Y = 0
    M = 0
    D = 0
    GetDate = True
    On Error Resume Next
    I = InStr(1, DateStr, "/")
    M = CLng(Left(DateStr, I - 1))
    D = CLng(Mid(DateStr, I + 1, InStr(I + 1, DateStr, "/") - I - 1))
    Y = CLng(Right(DateStr, Len(DateStr) - InStrRev(DateStr, "/")))
    If M < 1 Or M > 12 Or D < 1 Or D > 31 Or Y < 1 Then
        GetDate = False
    End If
End Function

4.空白のセルを選択します。これがC2で、この数式を入力します = AgeFunc(A2、B2) (A2は誕生日、B2は終了日です)、を押します 入力します キーを押して年齢を取得し、自動入力ハンドルを必要なセルの上にドラッグします。 スクリーンショットを参照してください:
docは1900年以前の年齢を計算します2

注意: このVBAは、6年23月1845日など、mm / dd / yyyyの形式の日付を持つ年齢のみを計算できます。


矢印青い右バブル Kutools forExcelで誕生日ごとの年齢を計算する

誕生日が通常1年1月1900日以降の場合は、申請できます Kutools for Excelさん 日付と時刻のヘルパー 与えられた誕生日までに年齢をすばやく計算できるユーティリティ。

Kutools for Excel, 以上で 300 便利な機能は、あなたの仕事をより簡単にします。 

後の 無料インストール Kutools for Excel、以下のようにしてください:

1.年齢を出力する空白のセルを選択し、をクリックします クツール > フォーミュラヘルパー > 日付と時刻のヘルパー。 スクリーンショットを参照してください:
docは1900年以前の年齢を計算します3

2.次に、 日付と時刻のヘルパー ダイアログで、年齢オプションをチェックし、に基づいて年齢を計算する誕生日を選択します 日付 誕生の テキストボックス、デフォルト、セルは絶対参照として選択されます。相対参照に変更してから、チェックすることができます。 今日 オプションを選択し、ドロップダウンリストに表示する結果タイプをXNUMXつ選択します。 出力結果タイプ。 スクリーンショットを参照してください:
docは1900年以前の年齢を計算します4

3。 クリック Ok この式を適用すると、年齢が表示されていることがわかります。 また、必要に応じて、オートフィルハンドルをこの数式が必要なセルの上にドラッグできます。 スクリーンショットを参照してください:
docは1900年以前の年齢を計算します5


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

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (1)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
「nombreAmbiguo」と言ってエクセルを使わないでください
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

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