|
すみません。質問するの自体初めてでして、どの様に質問すればいいのかが
よくわからなかったもので。
作成したのは、カレンダー(A列に日付、B列に休日BIT(休日は"1",平日は""))
を持たせたシートにて、日付を検索しその日付の休日BITの逆を返すFanction
プロシージャの戻り値をそのままセルのバリューに設定するものです。
Windows98+Excel2000で実行した結果、正常に終了するのですがバリュー値
が"1"となるはず(平日)のセルのバリューが空白?("")のままとなってしま
います。
Windows2000+Excel2000 及び WindowsXP+Excel2000では正常に動きました。
以下がコードの一部です。
よろしければ、回答お願いします。
足りない情報あれば、また投稿させていただきます。
-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-
Sub MAIN()'一部です
・・・・・・
SheetDate = iY & "/" & iM & "/" & iD
On Error GoTo Err1 '28、29、30日までの月の場合の日付変換時エラー処理へ)
SearchDate = CDate(SheetDate)
Worksheets(SSheetName(i)).Range(GyoPut(iD)).Value = CreateDef(SearchDate)
・・・・・・
End Sub
-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/
Function CreateDef(SerchDate As Date)
Dim c As Object
Dim SearchRow As Integer
Dim Res As Integer
Worksheets("Calendar").Select
With Worksheets("Calendar").Range("A:A")
Set c = .Find(SearchDate, LookIn:=xlValues)
If Not c Is Nothing Then
SearchRow = c.Row
If Cells(SearchRow, SearchColumn).Value = "" Then
Res = "1"
ElseIf Cells(SearchRow, SearchColumn).Value = "1" Then
Res = ""
End If
End If
End With
CreateDef = Res
End Function
|
|