■
'holiday(祝祭日テーブル)を使用して指定した日付が祝祭日、土日かをチェックする関数 '祝祭日、土日の場合はTrueを返す Public Function CheckHoliday(dt As Date) As Boolean '時刻が含まれるデータが指定された場合は考慮して日付部分だけ(時刻を00:00:00)にする dt = CDate(Format(dt, "yyyy/mm/dd")) 'holiday(祝祭日テーブル)テーブルを検索し、引数として受け取った日付が祝祭日に 'あたるかどうか確認する 'この部分だけAccessから変更 If Application.WorksheetFunction.CountIf(Range("休日"), dt) = 0 Then '祝祭日に該当しない場合は、土曜日か日曜日かをチェック '土日が休みでない場合は、Caseに指定する数値を該当の曜日を表す数値に変更する。 Select Case Weekday(dt, vbSunday) '日曜日が1、土曜日が7になる Case 1, 7 CheckHoliday = True Case Else CheckHoliday = False End Select Else 'holidayマスタに登録されていれば当然休日 CheckHoliday = True End If End Function