VB6指定した年と月に含まれる日数を取得する

スポンサーリンク

VB6 では、該当する関数はありませんので、指定した年と月に含まれる日数を返す関数を自作します。

閏年 (うるう年) を考慮するために、自作の IsLeapYear 関数を使用しています。この自作の IsLeapYear 関数については、閏年 (うるう年) かどうか判断する をご覧ください。

サンプルコード

以下にサンプルコードを示します。

VB6.0 以前
' -------------------------------------------------------------------------------
'       指定した年と月に含まれる日数を取得します。
'
' @Param    iYear   対象となる年。
' @Param    iMonth  対象となる月。
' @Return           指定した年と月に含まれる日数。
' -------------------------------------------------------------------------------
Public Function DaysInMonth(ByVal iYear As Integer, ByVal iMonth As Integer) As Integer
    Select Case iMonth
        Case 2
            If IsLeapYear(iYear) Then
                DaysInMonth = 29
            Else
                DaysInMonth = 28
            End If
        Case 4, 6, 9, 11
            DaysInMonth = 30
        Case 1, 3, 5, 7, 8, 10, 12
            DaysInMonth = 31
    End Select
End Function

使用例は以下のようになります。

VB6.0 以前
    ' 指定した年と月に含まれる日数を格納するための変数を宣言する
    Dim iDaysInMonth As Integer

    ' 2004年02月の日数を取得する
    iDaysInMonth = DaysInMonth(2004, 2)

    ' 取得した日数を表示する
    Call MsgBox(CStr(iDaysInMonth))

関連するリファレンス

準備中です。

スポンサーリンク