
結構な数で、
をworkbook-openに色々な操作を書いています。
殆ど問題ないのですが、
その前に実行したブックが、
イベント発生を止めた(false)まま終わってしまうと、
workboo-openに入れないので、ひと手間掛かってしまいます。
ここで質問ですが、
ブックを抜ける時には必ずイベント発生を『true』にするような方法は無いでしょうか。
一応、workbook-beforecloseではtrueにするよう書いてありますが、
本体中で無効にしてあると、workbook-beforecloseに入れないので意味なしです。
『イベント戻し』のようなボタンを作り、
押させられれば解決なのですが、
多岐の人間が使うブックでなかなか踏襲できません。
宜しくお願いします。
No.3ベストアンサー
- 回答日時:
ごめんなさい。
Resume Next
入れた方が良いでしょう。追記します。
Finaly:
Exit Sub
Error_Handler:
Application.EnableEvents = True
Resume Next
End Sub
何回もありがとうございました。
auto_open、
素晴らしいです。
まさに探していたのはこれで100%です。
やってみたら見事に意に沿っていました。
なお、イベント抑止がそのままは、
ロジックミスでも何でもなく、
ユーザーの中には、
何の考えも無く途中でやめて仕舞う者が居るということです。
これについてはいかんともしがたい、
というところです。
お世話になりました。
No.2
- 回答日時:
こんにちは。
標準モジュールに auto open を書いてみては?
Sub Auto_Open()
application.enableevents = true
End Sub
auto close はありませんが、、workbook の open イベント相当でブックを開いた時に自動実行されます。
動作未確認です。
applicationの設定変更は基本的に避けた方が良いのですが、どうしてもの場合は、必要最小限度にしたうえで、エラーハンドリングします。
例えば、change イベントの多重発生を抑止したいなら。
Private Sub イベント名
On Error Goto Error_Handler
application.enableevents = false
cells(1, 2).value = "test"
application.enableevents = true
Finaly:
Exit Sub
Error_Handler:
Application.EnableEvents = True
End Sub
No.1
- 回答日時:
こんにちは
>イベント発生を止めた(false)まま終わってしまうと、~
まずは、お作法として、止めっぱなしにしないようにコードを書くようにしておけば良いのではないでしょうか?
その場合でも、処理実行中にエラーが発生して中断すると、イベント停止のままになってしまいます。
まぁ、エラーを起こすようなコードを使っていることが問題と言えば問題なのですが・・
そちらも防止したければ、エラー処理を加えて、エラーで中断する際でも、イベント発生だけは元に戻しておくようにしておけばすむ問題のように思われます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) エクセルVBA イベントの切り替え 2 2022/05/01 03:51
- Excel(エクセル) beforecloseの中からの抜け出し方 1 2023/08/10 18:01
- Excel(エクセル) エクセル 値をコピペした時に、条件付き書式で塗られた背景色もペーストさせる 2 2023/04/05 17:21
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) EXCELのセル相互同期用のVBAでの不具合 3 2022/08/10 11:44
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Excel(エクセル) フォルダ内の全ブックのシート名を変更したい 7 2022/09/22 21:34
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー -'-2147417848
-
実行時エラー 438になった時の...
-
Excel VBA で End Subのところ...
-
なぜこんな初歩的なVBAのIf文で...
-
Excelで=IFで始まるStringがセ...
-
エクセルVBAについて
-
Accessで定型フォーマットのExc...
-
VBAで、定数式が必要ですのエラ...
-
アプリケーション定義またはオ...
-
ACCESS VBA Excelにデータ出力...
-
マクロについて教えてください...
-
VBAがブレークモードになっ...
-
プロシージャ名の取得
-
【Excel VBA】マクロをボタンに...
-
ExcelVBA Range クラスの Page...
-
AccessのクエリーでDate関数の...
-
エクセルのマクロでCells(j,i)...
-
コンバインエラー
-
なぜエラーになるのでしょうか...
-
日本語環境下で作成したマクロ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
VBAがブレークモードになっ...
-
なぜこんな初歩的なVBAのIf文で...
-
ExcelVBA Range クラスの Page...
-
EXCEL VBAマクロ中断でデバッグ...
-
実行時エラー -'-2147417848
-
【Excel VBA】マクロをボタンに...
-
Outlook.ApplicationをCreateOb...
-
VBAでのエラー
-
マクロについて教えてください...
-
実行時エラー3001「引数が間違...
-
実行時エラー48発生時のDLL特定...
-
VB6+SQL サーバー 2000 で 実行...
-
エクセルエラー13型が一致しま...
-
VBS実行時エラー オブジェクト...
-
ADODB.Streamを使用してUTF-8を...
-
INSERT INTOステートメント構文...
-
VBAで、定数式が必要ですのエラ...
-
OLEDB.NETで接続できない
-
VBSで変数の宣言はできないので...
おすすめ情報