NSDHoliday メンバ

祝日、日曜日の休日を取得、判断します。


●コンストラクタ

名前 説明
NSDHoliday NSDHolidayを初期化します。

●プロパティの一覧

名前 説明
WeekDayNameStyleList 曜日名の表示スタイルリストを設定します。

●メソッドの一覧

名前 引数 戻り値 説明
Dispose なし なし リソースの解放を行います。
GetHolidayName ( NSD_HOLIDAY_KIND, String, NSD_HOLIDAY_KIND ) Boolean型 休日名を取得します。
GetSyunbunDay ( Integer, Integer ) Boolean型 春分の日を求めます。(1900年〜2099年)
GetSyuubunDay ( Integer, Integer ) Boolean型 秋分の日を求めます。(1900年〜2099年)
GetYearlyHoliday ( Integer, Boolean, NSD_HolidayInfo() ) Boolean型 年間の休日を求ます。
IsHoliday ( String, Boolean, NSD_HOLIDAY_KIND ) Boolean型 文字列型の日付を渡して、休日かどうかを返します。
( DateTime, Boolean, NSD_HOLIDAY_KIND ) Boolean型 日付を渡して、休日かどうかを返します。
( Integer, Integer, Integer, Boolean, NSD_HOLIDAY_KIND ) Boolean型 年月日を渡して、休日かどうかを返します。
GetYMD ( DateTime ) String型 日付を西暦で返します。
GetWeekDayName ( DateTime, NSD_WeekDayNameInfo ) Boolean型 曜日名情報を渡し、曜日の名前を返します。
( DateTime, NSD_WEEKDAY_NAME_STYLE ) Boolean型 曜日の表示スタイルを渡し、曜日の名前を返します。

●データ用クラスの一覧

名前:NSD_HolidayInfo

構文:

Public Class NSD_HolidayInfo
    Public Date_Day As DateTime
    Public HolidayName As String
End Class

内容:休日情報クラス。

名前 説明
Date_Day DateTime 年月日。
HolidayName String 休日名。

 

名前:NSD_WeekDayNameInfo

構文:

Public Class NSD_WeekDayNameInfo
    Public Property WeekDayName() As String
    Public Property Style() As NSD_WEEKDAY_NAME_STYLE
End Class

内容:曜日名情報。

名前 説明
WeekDayName String 曜日名。
Style NSD_WEEKDAY_NAME_STYLE 曜日の表示スタイル。

●定数の一覧

名前:NSD_HOLIDAY_KIND 休日種類
名前 内容
NotHoliday 休日でない (1桁の位)
Sunday 日曜日 (1桁の位)
Furikae 振替休日 (1桁の位)
Gantan 元旦 (10の位以上)
Seijin 成人の日 (10の位以上)
Kenkoku 建国記念日 (10の位以上)
Syunbun 春分の日 (10の位以上)
SyouwaTennou 昭和天皇誕生日 (10の位以上)
Midori みどりの日 (10の位以上)
Kenpou 憲法記念日 (10の位以上)
Kokumin 国民の休日 (10の位以上)
Kodomo こどもの日 (10の位以上)
Umi 海の日 (10の位以上)
Keirou 敬老の日 (10の位以上)
Syuubun 秋分の日 (10の位以上)
Taiiku 体育の日 (10の位以上)
Bunka 文化の日 (10の位以上)
Kinrou 勤労感謝の日 (10の位以上)
Tennou 天皇誕生日 (10の位以上)
Syouwa2007 昭和の日(2007年以降) (10の位以上)
Midori2007 みどりの日(2007年以降) (10の位以上)
Yama2016 山の日(2016年以降) (10の位以上)

 

名前:NSD_WEEKDAY_NAME_STYLE 曜日の表示スタイル
名前 内容
STYLE_Japanese 日本語 (日曜日)
STYLE_Japanese_Middle 日本語 (日曜)
STYLE_Japanese_Short 日本語 (日)
STYLE_English 英語 (Sunday)
STYLE_English_Short 英語 (Sun)

●NSDHolidayコンストラクタの説明

構文:Public Sub New()

使用法:Dim Cls_Holiday As New NSDHoliday

引数:なし。

使用例:

Public Class Form1
    Dim Cls_Holiday As New NSDHoliday
        :
End Class

●NSDHolidayプロパティの説明

名前:WeekDayNameStyleList

構文:Public Property WeekDayNameStyleList() As Collections.ArrayList

機能:曜日名の表示スタイルリストを設定します。

Set値:NSD_WeekDayNameInfoのリストをセットします。

Get値:NSD_WeekDayNameInfoのリストを取得します。

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            ' 曜日の表記スタイル設定。
            With Me.ComboBox1
                .Items.Clear()
                For Int_Loop As Integer = 0 To Cls_Holiday.WeekDayNameStyleList.Count - 1
                    .Items.Add(Cls_Holiday.WeekDayNameStyleList.Item(Int_Loop))
                Next
                .SelectedIndex = 0
            End With
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

●NSDHolidayメソッドの説明

名前:Dispose
構文:Public Overridable Sub Dispose() Implements IDisposable.Dispose

機能:リソースを解放します。

※終了時に必ず呼び出します。

引数:なし。

戻り値:なし。

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

名前:GetHolidayName
構文:Public Function GetHolidayName( Kind, Name, DayKind ) As Boolean

機能:休日名を取得します。

引数:

名前 引数渡しの方法 説明
Kind NSD_HOLIDAY_KIND 値渡し(ByVal) 休日種類を渡します。
Name String 参照渡し(ByRef) 休日名を返します。(日曜日のみはNothingを返します。)
DayKind NSD_HOLIDAY_KIND 参照渡し(ByRef) 休日種類を返します。
※ここでは、下に示す内容を返します。
内容
NSD_HOLIDAY_KIND.NotHoliday 休日でない
NSD_HOLIDAY_KIND.Sunday 日曜日
NSD_HOLIDAY_KIND.Furikae 振替休日

戻り値:Boolean

戻り値の説明:

True:成功 、 False:失敗、エラー発生

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Dim Str_YMD As String = Nothing                 ' 年月日。
            Dim Bln_Holiday As Boolean = False              ' True:休日 False:休日でない。
            Dim Int_Kind As NSDHoliday.NSD_HOLIDAY_KIND     ' 休日種類。
            Dim Int_DayKind As NSDHoliday.NSD_HOLIDAY_KIND  ' 休日曜日確認用。
            Dim Str_Name As String = Nothing                ' 名前。
            Dim Str_Msg As String = Nothing                 ' メッセージ。

                Str_YMD = Me.TextBox1.Text
                ' 休日の確認します。
                If Cls_Holiday.IsHoliday(Str_YMD, Bln_Holiday, Int_Kind) Then
                    If Bln_Holiday Then
                        ' 休日。
                        Str_Msg = "西暦:" & Str_YMD & ControlChars.CrLf
                        ' 休日の名前を取得します。
                        If Cls_Holiday.GetHolidayName(Int_Kind, Str_Name, Int_DayKind) Then
                            If [String].IsNullOrEmpty(Str_Name) Then
                                ' 祝日とかさならない日曜日。
                                Str_Msg &= "日曜日"
                            Else
                                ' 祝日。
                                Str_Msg &= Str_Name
                            End If
                            Str_Msg &= "です。"
                        End If
                    Else
                        Str_Msg = "休日ではありません。"
                    End If
                Else
                    Str_Msg = "休日の確認に失敗しました。"
                End If
                ' メッセージを表示します。
                MsgBox(Str_Msg)

        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

名前:GetSyunbunDay
構文:Public Function GetSyunbunDay( Year , Day ) As Boolean

機能:春分の日を求めます。(1900年〜2099年)

引数:

名前 引数渡しの方法 説明
Year Integer 値渡し(ByVal) 年を渡します。(1980〜2099まで)
Day Integer 参照渡し(ByRef) 春分の日を返します。

戻り値:Boolean

戻り値の説明:

True:成功 、 False:失敗、エラー発生

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Do
                Dim Int_Year As Integer         ' 年。
                Dim Int_Day As Integer          ' 日。
                Dim Str_Msg As String = Nothing ' メッセージ。

                ' 年の確認。
                If IsNumeric(Me.TextBox1.Text) Then
                    Int_Year = CInt(Me.TextBox1.Text)
                Else
                    MsgBox("年を入力して下さい。")
                    Exit Do
                End If

                ' 春分の日。
                If Cls_Holiday.GetSyunbunDay(Int_Year, Int_Day) Then
                    Str_Msg = "西暦" & CStr(Int_Year) & "年の春分は3/" & CStr(Int_Day) & "日です。"
                Else
                    Str_Msg = "春分の日の取得に失敗しました。"
                End If
                MsgBox(Str_Msg)
            Loop While (0)
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

名前:GetSyuubunDay
構文:Public Function GetSyuubunDay( Year , Day ) As Boolean

機能:秋分の日を求めます。(1900年〜2099年)

引数:

名前 引数渡しの方法 説明
Year Integer 値渡し(ByVal) 年を渡します。(1980〜2099まで)
Day Integer 参照渡し(ByRef) 秋分の日を返します。

戻り値:Boolean

戻り値の説明:

True:成功 、 False:失敗、エラー発生

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Do
                Dim Int_Year As Integer         ' 年。
                Dim Int_Day As Integer          ' 日。
                Dim Str_Msg As String = Nothing ' メッセージ。

                ' 年の確認。
                If IsNumeric(Me.TextBox1.Text) Then
                    Int_Year = CInt(Me.TextBox1.Text)
                Else
                    MsgBox("年を入力して下さい。")
                    Exit Do
                End If

                ' 秋分の日。
                If Cls_Holiday.GetSyuubunDay(Int_Year, Int_Day) Then
                    Str_Msg = "西暦" & CStr(Int_Year) & "年の秋分は9/" & CStr(Int_Day) & "日です。"
                Else
                    Str_Msg = "秋分の日の取得に失敗しました。"
                End If
                MsgBox(Str_Msg)
            Loop While (0)
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

名前:GetYearlyHoliday
構文:Public Function GetYearlyHoliday( Year , Flag , HolidayInfo() ) As Boolean

機能:年間の休日を求ます。(1949年以降の日曜、祭日、振替休日を休日として判断しています。)

引数:

名前 引数渡しの方法 説明
Year Integer 値渡し(ByVal) 休日を求める年(西暦)を指定します。
Flag Boolean 値渡し(ByVal) True:日曜日も対象にする。
False:祝日、振替休日のみで通常の日曜日は対象外にします。
HolidayInfo() NSD_HolidayInfo 参照値渡し(ByRef) 休日情報を返します。

戻り値:Boolean

戻り値の説明:

True:成功 、 False:失敗、エラー発生

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Dim Str_Year As String = Nothing                                ' 年。
            Dim Int_Year As Integer                                         ' 年。
            Dim Bln_Flag As Boolean                                         ' 休日取得フラグ。
            Dim Cls_HolidayInfo() As NSDHoliday.NSD_HolidayInfo = Nothing   ' 休日情報。
            Dim Int_Loop As Integer                                         ' ループ変数。

                ' リストボックスをクリアする。
                Me.ListBox1.Items.Clear()

                ' 休日を求める年をセットします。
                Str_Year = Me.TextBox1.Text

                ' 日曜のみを含めるかをセットします。
                If Me.RadioButton1.Checked Then
                    ' 日曜のみは含めない。
                    Bln_Flag = False
                Else
                    ' 日曜のみも含める。
                    Bln_Flag = True
                End If

                If IsNumeric(Str_Year) Then
                    ' 年をセットする。
                    Int_Year = CInt(Str_Year)

                    ' 1年間の休日を取得します。
                    If Cls_Holiday.GetYearlyHoliday(Int_Year, Bln_Flag, Cls_HolidayInfo) Then
                        ' 1年間の休日をセットします。
                        For Int_Loop = 0 To Cls_HolidayInfo.Length - 1
                            With Cls_HolidayInfo(Int_Loop)
                                Me.ListBox1.Items.Add(Cls_Holiday.GetYMD(.Date_Day) & _
                                                      "(" & Cls_Holiday.GetWeekDayName(.Date_Day, Me.Cmb_WeekDayName.SelectedItem) & _
                                                      ")" & " " & .HolidayName)
                            End With
                        Next Int_Loop
                    End If
                End If
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

名前:IsHoliday
機能:休日かどうかを返します。
(1949年以降の日曜、祭日、振替休日を休日として判断しています。)

@文字列型の日付を渡して、休日かどうかを返します。

構文:Public Overloads Function IsHoliday( YMD , HoliDay, HolidayKind ) As Boolean

引数:

名前 引数渡しの方法 説明
YMD String 値渡し(ByVal) 休日かどうかを求める日付(yyyy/MM/dd型式)の文字列を渡します。
HoliDay Boolean 参照渡し(ByRef) 休日の場合はTrueを返します。
HolidayKind NSD_HOLIDAY_KIND 参照渡し(ByRef) 休日種類を返します。

戻り値:Boolean

戻り値の説明:

True:成功 、 False:失敗、エラー発生

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Dim Str_YMD As String = Nothing                 ' 年月日。
            Dim Bln_Holiday As Boolean = False              ' True:休日 False:休日でない。
            Dim Int_Kind As NSDHoliday.NSD_HOLIDAY_KIND     ' 休日種類。
            Dim Int_DayKind As NSDHoliday.NSD_HOLIDAY_KIND  ' 休日曜日確認用。
            Dim Str_Name As String = Nothing                ' 名前。
            Dim Str_Msg As String = Nothing                 ' メッセージ。

                Str_YMD = Me.TextBox1.Text
                ' 休日の確認します。
                If Cls_Holiday.IsHoliday(Str_YMD, Bln_Holiday, Int_Kind) Then
                    If Bln_Holiday Then
                        ' 休日。
                        Str_Msg = "西暦:" & Str_YMD & ControlChars.CrLf
                        ' 休日の名前を取得します。
                        If Cls_Holiday.GetHolidayName(Int_Kind, Str_Name, Int_DayKind) Then
                            If [String].IsNullOrEmpty(Str_Name) Then
                                ' 祝日とかさならない日曜日。
                                Str_Msg &= "日曜日"
                            Else
                                ' 祝日。
                                Str_Msg &= Str_Name
                            End If
                            Str_Msg &= "です。"
                        End If
                    Else
                        Str_Msg = "休日ではありません。"
                    End If
                Else
                    Str_Msg = "休日の確認に失敗しました。"
                End If
                ' メッセージを表示します。
                MsgBox(Str_Msg)
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

A日付を渡して、休日かどうかを返します。

構文:Public Overloads Function IsHoliday( Day, HoliDay, HolidayKind ) As Boolean

引数:

名前 引数渡しの方法 説明
Day DateTime 値渡し(ByVal) 休日かどうかを求める日付を渡します。
HoliDay Boolean 参照渡し(ByRef) 休日の場合はTrueを返します。
HolidayKind NSD_HOLIDAY_KIND 参照渡し(ByRef) 休日種類を返します。

戻り値:Boolean

戻り値の説明:

True:成功 、 False:失敗、エラー発生

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Dim Date_YMD As DateTime = Nothing              ' 年月日。
            Dim Bln_Holiday As Boolean = False              ' True:休日 False:休日でない。
            Dim Int_Kind As NSDHoliday.NSD_HOLIDAY_KIND     ' 休日種類。
            Dim Int_DayKind As NSDHoliday.NSD_HOLIDAY_KIND  ' 休日曜日確認用。
            Dim Str_Name As String = Nothing                ' 名前。
            Dim Str_Msg As String = Nothing                 ' メッセージ。

                Date_YMD = Now
                ' 休日の確認します。
                If Cls_Holiday.IsHoliday(Date_YMD, Bln_Holiday, Int_Kind) Then
                    If Bln_Holiday Then
                        ' 休日。
                        Str_Msg = "西暦:" & Str_YMD & ControlChars.CrLf
                        ' 休日の名前を取得します。
                        If Cls_Holiday.GetHolidayName(Int_Kind, Str_Name, Int_DayKind) Then
                            If [String].IsNullOrEmpty(Str_Name) Then
                                ' 祝日とかさならない日曜日。
                                Str_Msg &= "日曜日"
                            Else
                                ' 祝日。
                                Str_Msg &= Str_Name
                            End If
                            Str_Msg &= "です。"
                        End If
                    Else
                        Str_Msg = "休日ではありません。"
                    End If
                Else
                    Str_Msg = "休日の確認に失敗しました。"
                End If
                ' メッセージを表示します。
                MsgBox(Str_Msg)
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

B年月日を渡して、休日かどうかを返します。

構文:Public Overloads Function IsHoliday( Year, Month, Day, HoliDay, HolidayKind ) As Boolean

引数:

名前 引数渡しの方法 説明
Year Integer 値渡し(ByVal) 西暦(年)を渡します。
Month Integer 値渡し(ByVal) 西暦(月)を渡します。
Day Integer 値渡し(ByVal) 西暦(日)を渡します。
HoliDay Boolean 参照渡し(ByRef) 休日の場合はTrueを返します。
HolidayKind NSD_HOLIDAY_KIND 参照渡し(ByRef) 休日種類を返します。

戻り値:Boolean

戻り値の説明:

True:成功 、 False:失敗、エラー発生

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Dim Bln_Holiday As Boolean = False              ' True:休日 False:休日でない。
            Dim Int_Kind As NSDHoliday.NSD_HOLIDAY_KIND     ' 休日種類。
            Dim Int_DayKind As NSDHoliday.NSD_HOLIDAY_KIND  ' 休日曜日確認用。
            Dim Str_Name As String = Nothing                ' 名前。
            Dim Str_Msg As String = Nothing                 ' メッセージ。

                ' 休日の確認します。
                If Cls_Holiday.IsHoliday(Now.Year, Now.Month, Now.Day, Bln_Holiday, Int_Kind) Then
                    If Bln_Holiday Then
                        ' 休日。
                        Str_Msg = "西暦:" & Str_YMD & ControlChars.CrLf
                        ' 休日の名前を取得します。
                        If Cls_Holiday.GetHolidayName(Int_Kind, Str_Name, Int_DayKind) Then
                            If [String].IsNullOrEmpty(Str_Name) Then
                                ' 祝日とかさならない日曜日。
                                Str_Msg &= "日曜日"
                            Else
                                ' 祝日。
                                Str_Msg &= Str_Name
                            End If
                            Str_Msg &= "です。"
                        End If
                    Else
                        Str_Msg = "休日ではありません。"
                    End If
                Else
                    Str_Msg = "休日の確認に失敗しました。"
                End If
                ' メッセージを表示します。
                MsgBox(Str_Msg)
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

名前:GetYMD
構文:Public Function GetYMD( Day ) As String

機能:日付を西暦で返します。

引数:

名前 引数渡しの方法 説明
Day DateTime 値渡し(ByVal) 日付を渡します。

戻り値:String

戻り値の説明:

yyyy/MM/dd型式の西暦日を返します。

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Dim Str_Year As String = Nothing                                ' 年。
            Dim Int_Year As Integer                                         ' 年。
            Dim Bln_Flag As Boolean                                         ' 休日取得フラグ。
            Dim Cls_HolidayInfo() As NSDHoliday.NSD_HolidayInfo = Nothing   ' 休日情報。
            Dim Int_Loop As Integer                                         ' ループ変数。

                ' リストボックスをクリアする。
                Me.ListBox1.Items.Clear()

                ' 休日を求める年をセットします。
                Str_Year = Me.TextBox1.Text

                ' 日曜のみを含めるかをセットします。
                If Me.RadioButton1.Checked Then
                    ' 日曜のみは含めない。
                    Bln_Flag = False
                Else
                    ' 日曜のみも含める。
                    Bln_Flag = True
                End If

                If IsNumeric(Str_Year) Then
                    ' 年をセットする。
                    Int_Year = CInt(Str_Year)

                    ' 1年間の休日を取得します。
                    If Cls_Holiday.GetYearlyHoliday(Int_Year, Bln_Flag, Cls_HolidayInfo) Then
                        ' 1年間の休日をセットします。
                        For Int_Loop = 0 To Cls_HolidayInfo.Length - 1
                            With Cls_HolidayInfo(Int_Loop)
                                Me.ListBox1.Items.Add(Cls_Holiday.GetYMD(.Date_Day) & _
                                                      "(" & Cls_Holiday.GetWeekDayName(.Date_Day, Me.Cmb_WeekDayName.SelectedItem) & _
                                                      ")" & " " & .HolidayName)
                            End With
                        Next Int_Loop
                    End If
                End If
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

名前:GetWeekDayName
機能:曜日の名前を返します。

@曜日名情報を渡し、曜日の名前を返します。

構文:Public Overloads Function GetWeekDayName( Day, WeekDayNameItem ) As String

引数:

名前 引数渡しの方法 説明
Day DateTime 値渡し(ByVal) 日付を渡します。
WeekDayNameItem NSD_WeekDayNameInfo 値渡し(ByVal) 曜日名情報を渡します。

戻り値:String

戻り値の説明:

曜日の名前を返します。

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Dim Str_Msg As String = Cls_Holiday.GetWeekDayName(Now, _
                                       Cls_Holiday.WeekDayNameStyleList.Item(0))
            ' メッセージを表示します。
            MsgBox(Str_Msg)
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

 

A曜日の表示スタイルを渡し、曜日の名前を返します。

構文:Public Overloads Function GetWeekDayName( Day , Style ) As String

引数:

名前 引数渡しの方法 説明
Day DateTime 値渡し(ByVal) 日付を渡します。
Style NSD_WEEKDAY_NAME_STYLE 値渡し(ByVal) 曜日の表示スタイルを渡します。

戻り値:String

戻り値の説明:

曜日の名前を返します。

使用例:

Public Class Form1
    ' NSDHolidayを初期化します。
    Dim Cls_Holiday As New NSDHoliday

    Private Sub Button1_Click( sender As System.Object, _
                               e As System.EventArgs _
                              ) Handles Button1.Click
        Try
            Dim Str_Msg As String = Cls_Holiday.GetWeekDayName(Now, _
                                                  NSDHoliday.NSD_WEEKDAY_NAME_STYLE.STYLE_Japanese)
            ' メッセージを表示します。
            MsgBox(Str_Msg)
        Catch ex As Exception
        Finally
        End Try
    End Sub

    ' FormClosing。
    Private Sub Form1_FormClosing( _
                        ByVal sender As Object, _
                        ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                        Handles Me.FormClosing
        Try
            ' NSDHolidayのリソースを解放します。
            If Not (Cls_Holiday Is Nothing) Then
                Cls_Holiday.Dispose()
                Cls_Holiday = Nothing
            End If
        Catch ex As Exception
        Finally
        End Try
    End Sub
End Class

Copyright (C) 2014 Nihon System Developer Corp. All Rights Reserved.