休日判断
昨日の休日の判断方法を考え中です。
とりあえず、休日ファイルを作ってそれを検索する方法でいこうかと。<手抜き
計算で求めることもできますが、法改正する度にメンテナンスするのも...<言い訳
休日ファイルをメンテナンスするのとどっちが簡単だろう...
関数にするとこんな感じです。エラー処理は手抜き<ぉぃ
| Function GetHoliday(ByVal dtmDate)
Dim objFSO, objTextFile
Dim strHolidays, strDate
Dim lngHoliday
lngHoliday = 0
strHolidays = ""
strDate = Right("000" & Year(dtmDate), 4) _
& Right("0" & Month(dtmDate), 2) _
& Right("0" & Day(dtmDate), 2)
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
On Error Resume Next
Set objTextFile = objFSO.OpenTextFile(Server.MapPath("holiday.txt"), 1, False, 0)
If Err.Number = 0 Then strHolidays = objTextFile.ReadAll()
objTextFile.Close
On Error GoTo 0
Set objTextFile = Nothing
Set objFSO = Nothing
If InStr(strHolidays, strDate) > 0 Then
lngHoliday = 2
Else
Select Case Weekday(dtmDate)
Case 1: lngHoliday = 2
Case 7: lngHoliday = 1
End Select
End If
GetHoliday = lngHoliday
End Function
|
と、ここまで作った時点で、寝てしまいました。