|
▼たけし さん:
おはようございます
>mが月のみだと知りませんでした。。(教えていただいたコードなので^^;
>
>現在、そのように別処理を考えているのですが、うまくいかないです><
>
>mではなく、他の関数でなにかできないでしょうか?
DateAdd関数で現在の日付に1ヶ月とか加算してシートの日付と大小を比べるのはどうでしょうか?
下のような感じになります
For i = 1 To 39
' シートiのA1の日付を取得
d = Worksheets(i + 1).Range("A91").Value
If d = "" Then
' シートiのA1の日付が未設定(使用者なし)
c = vbWhite
Else
' シートiのA1の日付が
' 1ヶ月未満:赤、1ヶ月以上5ヶ月未満:黄色、5ヶ月以上:緑
c = Switch(d < DateAdd("m", 1, Date), vbRed, d < DateAdd("m", 5, Date), vbYellow, d > DateAdd("m", 5, Date), vbGreen)
End If
' ボタンの色を設定s
UserForm1.Controls("CommandButton" & CStr(i)).BackColor = c
Next
メール送信については私はよくわかりません
しかし、過去ログにその手の話題があるようですので
検索してみてください
|
|