年を指定しないで日付を指定するには?

解決


R18  2005-04-23 02:21:59  No: 121185

Win2000を使用しています。
  
毎年、決まった日付にメッセージを表示させたいのですが、年を指定しないで日付を指定するにはどうしたらいいですか?


ガッ  2005-04-23 02:23:25  No: 121186

> 毎年、決まった日付にメッセージを表示させたい
というコードを、

> 年を指定しないで日付
だけで分散させる様にしてみては?


R18  2005-04-23 02:28:52  No: 121187

ガッさんお答えありがとうございます。

大変お手数ですが、全くの初心者なので出来れば詳しいソースなどを教えてもらえると助かるのですが。自分で質問した内容のソースも書けていない状態なので。お願いします。


ガッ  2005-04-23 02:50:33  No: 121188

本当は周りの人に訊いたほうがいいと思うけど…
まぁ、今回は自分のためにもなりましたので、ちょっとうpしておきます。

Public Enum eCheckOptionMask
    check_Year = 1
    check_Month = 2
    check_Day = 4
    check_Hour = 8
    check_Minute = 16
    check_Second = 32
    check_All = 64 - 1
End Enum

Public Function CheckDate(ByVal Date1 As Date, _
                          ByVal Date2 As Date, _
                          Optional ByVal CheckOption As eCheckOptionMask = check_All) As Boolean
    'Date1のCheckOptionの場所がDate2のそれと等しいかどうか調べる
    CheckDate = True
    If CheckOption And check_Year Then
        CheckDate = CheckDate And (Year(Date1) = Year(Date2))
    End If
    If CheckOption And check_Month Then
        CheckDate = CheckDate And (Month(Date1) = Month(Date2))
    End If
    If CheckOption And check_Day Then
        CheckDate = CheckDate And (Day(Date1) = Day(Date2))
    End If
    
    If CheckOption And check_Hour Then
        CheckDate = CheckDate And (Hour(Date1) = Hour(Date2))
    End If
    If CheckOption And check_Minute Then
        CheckDate = CheckDate And (Minute(Date1) = Minute(Date2))
    End If
    If CheckOption And check_Second Then
        CheckDate = CheckDate And (Second(Date1) = Second(Date2))
    End If
    
End Function

※バグ取りしていないので、十分注意してください(ぇ


LESIA  2005-04-23 03:06:44  No: 121189

決まった日時じゃなくて日付なので、これだけでもいいかも。

'4/22にメッセージを表示する場合
If (Month(Now) = 4) And (Day(Now) = 22) Then
   MsgBox "めっせーじ"
End If


R18  2005-04-23 03:07:17  No: 121190

ありがとうございます!

大変助かりました。後は、これを元に頑張ってみます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加