印刷するボタンを押したときにマクロを自動実行して印刷をできないようにする方法
印刷をされると困るような資料がブックにある場合に印刷をしようとするとマクロが実行されて、印刷ができないように制御するには、ブックを印刷する操作をしたときに発生するイベントプロシージャーのBeforePrint【ビフォアプリント】イベントプロシージャーを作成します。ThisWorkbookモジュールのPrivate Sub Workbook_BeforePrint(Cancel As Boolean)プロシージャーに、マクロを記述します。
ThisWorkbookモジュールの使い方
1.開発タブをクリックする
2.VisualBasicをクリックして開く
4.ダウンリストをクリックする
5.Workbookを選択する
6.右側のダウンリストをクリックする
7.BeforPrintを選択する
8.Private Sub workbook_BeforePrint(Cancel As Boolean)
プロシージャが作成されました。
印刷する直前にマクロを自動実行して印刷をできないようにするコードと解説
Private Sub Workbook_BeforePrint(Cancel As Boolean) MsgBox "このブックは印刷が許可されていません。", vbExclamation Cancel = True End Sub
ワークブックを印刷する操作を実行すると発生するBeforePrint【ビフォアプリント】イベントプロシージャーを作成します。
2行目【MsgBox “このブックは印刷が許可されていません。”, vbExclamation】
ユーザーが印刷操作をしたときにMsgBox【メッセージボックス】関数を使用してユーザーに印刷ができないことを伝えます。
3行目【Cancel = True】
Workbook_BeforePrint(Cancel As Boolean)イベントプロシージャーの引数Cancel【キャンセル】にTrueを設定してブックの印刷操作を停止します。通常ブックの印刷操作を実行するとWorkbook_BeforePrint(Cancel As Boolean)イベントプロシージャーの引数Cancel【キャンセル】にはFalseが渡されますが、Trueを渡すことによりイベントプロシージャーを途中で停止します。
実行結果
印刷をクリックします。