| 
    
     |  | ▼まつ さん: こんばんは。
 
 >マクロで新規作成したブックのBeforePrintイベントに上記のコードを埋め込む方法は
 >ないものでしょうか?
 そういう方法もないわけではありませんが、この事象ではそれが適当かどうかは
 詳しい仕様の記述がないと何ともいえませんねえ!!
 
 >ブックの新規作成をするマクロが含まれるプロジェクトのWorkBook_BeforePrintイベント
 
 このマクロを含むプロジェクトのthisworkbookのモジュールに
 '=============================================================
 Option Explicit
 Dim WithEvents new_bk As Workbook
 '=============================================================
 Sub 新規作成()
 Set new_bk = Workbooks.Add
 End Sub
 '=============================================================
 Private Sub new_bk_BeforePrint(Cancel As Boolean)
 Dim Sheet_Name As String
 Dim w_str As String
 
 Sheet_Name = new_bk.ActiveSheet.Name
 If Sheet_Name = "伝票" Then
 If new_bk.ActiveSheet.Range("B5") = "" Then        '/*---セル"B5":日付
 Cancel = True
 w_str = "日付が未入力なので印刷できません。"
 MsgBox w_str, vbExclamation, "印刷"
 End If
 End If
 'このイベントプロシジャー中身は吟味していません
 End Sub
 
 とし、プロシジャー「新規作成」で作成された新規ブックは、
 上記の「new_bk_BeforePrint」というイベントプロシジャーが作動します。
 
 ユーザーが通常オペレーティングで新規作成したブックに対してもイベントを適応したいなら、Applicationレベルのイベントを拾う方法を取らなければなりません。
 
 
 まずは、上記を試してみてください
 
 |  |