HOME > 即効テクニック > Excel VBA > 日付・時刻関連のテクニック > コンボボックスに本日の日付を表示する

即効テクニック

日付・時刻関連のテクニック

コンボボックスに本日の日付を表示する

(Excel 97)
フォームに、年用のコンボボックス「cmbYY」、月用のコンボボックス「cmbDD」、日用のコンボボックス「cmbDD」の3つのコンボボックスを配置します。
年はYear関数を使って、当年から前3年、後2年の計6年分の年をコンボボックスのリストに表示します。コンボボックスの初期値は当年です。
月は1〜12、日は1〜31がリストに表示されます。初期値は DatePart関数を使って当月日を設定しています。
Private Sub UserForm_Initialize()
    Dim i As Integer
    Dim k As Integer

    '年のコンボボックスのリスト準備
    For i = -3 To 2
        k = Year(Date) + i
        If k >= 1900 And k < 2000 Then
            k = k Mod 100
            cmbYY.AddItem k
          Else
            cmbYY.AddItem k
        End If
        If i = 0 Then cmbYY.Value = k
    Next i
    For i = 1 To 31
        '月のコンボボックスのリスト準備
        If i <= 12 Then cmbMM.AddItem i
        If i = DatePart("m", Date) Then cmbMM.Value = i
        '日のコンボボックスのリスト準備
        cmbDD.AddItem i
        If i = DatePart("d", Date) Then cmbDD.Value = i
    Next i

End Sub