電子書籍の厳選無料作品が豊富!

エクセルで作成したシフト管理表で、翌日にお休み予定の人がいる時、
Bookを開いた際メッセージボックスを表示し「明日は休み予定の人がいます」のようなアラートを表示できるVBAを作成したいのですがどなたかご教示ください。

ブックの構成は、シート1に従業員1か月の○、×形式シフト表で、
シート2に休み希望表(F11:AI100まで)があり、各人の希望日を入力(例:7/11などの月/日形式)しています。
そのため、休み希望表の中に翌日の日付があればアラートが出るようにしたいです。

A 回答 (1件)

こんにちは



説明文だけではよくわかりませんけれど・・

Workbook_Open イベントに記述すれば、ブックを開いた際に実行されます。

PCの時刻を使用してよければ、翌日の日付は Int(Now()+1) で得られますので、対象セル範囲からこれと同じ日付を探せば良いでしょう。
検索するのには、セル範囲をル―プでチェックしても良いですし、Findメソッドで検索する方法もあります。
http://officetanaka.net/excel/vba/cell/cell11.htm
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます!
いただいた内容でやりたいことができました!
ありがとうございます♪

ちなみに記述内容は以下のように書きました。

Sub Auto_Open()
If Application.CountIf(Worksheets("休み希望").Range("F11:AI100"), Int(Now() + 1)) Then
MsgBox "明日はお休みのスタッフがいます。" & vbCrLf & "配置に注意してください。 ", Buttons:=vbExclamation
End If
End Sub

もっとわかりやすい記述ありますでしょうか?

お礼日時:2023/07/12 09:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!