|
▼n さん:
度々のご教示 大変有り難うございました。
やって見ます。
>>>[ページ設定]ダイアログにも[プレビュー]がありましたね...ちょっと挫折しましたorz
>Application.CommandBars.FindControl(ID:=247)もWithEventsで捉まえて
>Application.Dialogs(xlDialogPageSetup).Show と入れ替えると
>こちらのウィンドウには[プレビュー]がありません。
>なので
>Application.CommandBars.FindControl(ID:=109)をラップするだけで
>[プレビュー]クリックを判断する事ができそうです。
>あとはフラグをうまく使えばキャンセルも判定できると思います。
>
>'ThisWorkbook Module
>Option Explicit
>
>Private flg As Boolean
>Private WithEvents prvCB As Office.CommandBarButton
>Private WithEvents pstCB As Office.CommandBarButton
>
>Private Sub Workbook_BeforeClose(Cancel As Boolean)
> Set prvCB = Nothing
> Set pstCB = Nothing
>End Sub
>
>Private Sub Workbook_BeforePrint(Cancel As Boolean)
> If flg Then
> MsgBox "preview"
> flg = False
> End If
>End Sub
>
>Private Sub Workbook_Open()
> Set prvCB = Application.CommandBars.FindControl(ID:=109)
> Set pstCB = Application.CommandBars.FindControl(ID:=247)
>End Sub
>
>Private Sub prvCB_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean)
> 'MsgBox "preview_click"
> flg = True
>End Sub
>
>Private Sub pstCB_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean)
> CancelDefault = True
> Application.Dialogs(xlDialogPageSetup).Show
>End Sub
|
|