誕生日から年齢と干支を求める : Access

テキストボックスに生年月日を入力し、「実行」ボタンをクリックしてください。

年齢はDateDiff関数を使いネンの差で計算しています。今年の誕生日がまだ来ていない場合はマイナスしています。
干支は年を12で割った余りで求められます。割り切れる場合は「申」、そして1から順に「酉、戌、亥、子、丑、寅、卯、辰、巳、午、羊」になります。



BackHome BackTips Backメニュー

Accessフォームのボタンをクリックすると、現在の日付・時間から取り出しラベルコントロールに表示jします。
誕生日を入力

■ Access VBA 実行コード

Option Compare Database
Option Explicit

Private Sub コマンド6_Click()
    Dim s1 As String
    Dim tdate As Date
    Dim nage As Integer
    Dim seto As String
    If Nz(Me!テキスト1) = "" Then
        MsgBox "生年月日を入力してください。"
        Exit Sub
    End If
    If Not IsDate(Me!テキスト1) Then
        MsgBox "生年月日が日付型ではありません。"
        Exit Sub
    End If
    tdate = Me!テキスト1
    '年齢の計算
    If Date < DateSerial(Year(Now), Month(tdate), Day(tdate)) Then
        nage = DateDiff("yyyy", tdate, Now) - 1
    Else
        nage = DateDiff("yyyy", tdate, Now)
    End If
    s1 = "年齢: " & nage & vbCrLf

    '干支の計算
    Select Case Year(tdate) Mod 12
        Case 0: seto = "申"
        Case 1: seto = "酉"
        Case 2: seto = "戌"
        Case 3: seto = "亥"
        Case 4: seto = "子"
        Case 5: seto = "丑"
        Case 6: seto = "寅"
        Case 7: seto = "卯"
        Case 8: seto = "辰"
        Case 9: seto = "巳"
        Case 10: seto = "午"
        Case 11: seto = "羊"
    End Select
    s1 = s1 & "干支: " & seto
    Me!ラベル1.Caption = s1
End Sub


BackHome BackTips Backメニュー

Copyright(C) FeedSoft