[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『MsgBoxについて』(さくら)
ファイルの閉じるボタンを押したときに下記MsgBoxが出るように設定しました。
「Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim ans
ans = MsgBox("閲覧者ですか?", vbYesNo + vbQuestion)
If ans = vbNo Then Cancel = True
End Sub」
このMsgBoxで「いいえ」を選択した場合に下記マクロが実行されるようにしたいのですが
どのように設定すればいいでしょうか?
また、ファイルを読み取り専用で開いた場合、MsgBox自体を表示させないようにすることは可能でしょうか?
「Sub 終了()
'
' 終了 Macro
'
'
ActiveSheet.Outline.ShowLevels RowLevels:=0, ColumnLevels:=1 ActiveSheet.Outline.ShowLevels RowLevels:=1 Application.Dialogs(xlDialogProtectDocument).Show ActiveWorkbook.Save ActiveWorkbook.Close savechanges:=True End Sub」
よろしくお願いします。
< 使用 Excel:Excel2007、使用 OS:Windows8 >
>ファイルの閉じるボタンを押したときに下記MsgBoxが出るように設定しました。 が提示の処理によって実現されている内容は理解しているでしょうか。
If ans = vbNo Then Cancel = True がメッセージボックスの結果(No を選んだ)による処理なので If ans = vbNo Then 終了 Cancel = True '// まだ必要なら End If に変更したいということでしょうか。
後者は Private Sub Workbook_BeforeClose(Cancel As Boolean) の直後に If ActiveWorkbook.ReadOnly = True Then Exit Sub '// あるいは 「終了」? で。
(Mook) 2014/09/11(木) 16:21
ありがとうございます。
教えて頂いたコードでなんとかやりたいことが実現できました。
(さくら) 2014/09/12(金) 11:42
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.