No.2ベストアンサー
- 回答日時:
ブックを開いたままマクロの有効無効を
切り替えることはできないような気がします。
が、マクロが有効でもコードが実行されないようにすることは可能です。
(正確には、実行されてもコードの先頭でExitする)
パブリックな変数を用意して、この変数のTrue/Falseを切り替えて、
Falseの場合にはプロシージャをExitさせたり、イベントを無効にしたりすればよいかと思います。
たとえば、以下のような感じで・・・。
まず、標準モジュールに
Public Flg As Boolean
Sub test1()
Dim strflg As String
Application.DisplayStatusBar = True
Flg = Not Flg
Application.EnableEvents = Flg
If Flg Then
strflg = "Macro有効"
Else
strflg = "Macro無効"
End If
Application.StatusBar = strflg
End Sub
としておきます。
ブック内の他のプロシージャには
Sub test2()
If Not Flg Then Exit Sub
'
'コード
'
End Sub
のようにしてFlgがFalseのときは
プロシージャの先頭で、Exit Subさせたり、
イベントを無効にすれば良いのではないでしょうか。
このtest1をコマンドバーボタンにでも登録しておいて、
有効/無効を切り替えるようにすれば良いかと思います。
一応、現在の有効/無効の状態がわかりやすいように
ステータスバーに表示するようにしています。
No.3
- 回答日時:
追伸です。
なお、Excel2002以上でしたら、
開くときに、以下のコードで、
Application.AutomationSecurity = msoAutomationSecurityForceDisable
で、ブックのマクロ全てを使えなくすることは可能です。
No.1
- 回答日時:
こんばんは。
ご質問の説明が分りにくいのですが、自分が意図していないマクロが働くとしたら、イベント・ドリブン型のマクロのことでしょうか?
もし、そうなら、 Application.EnableEvents = False でよいのではありませんか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/04 17:58
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/02/07 09:58
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/01/27 13:15
- Excel(エクセル) マクロの付いたExcelが開けません 3 2023/02/01 10:54
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/03/31 12:46
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/08/04 13:56
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
- Excel(エクセル) Excelのマクロコードについて教えてください。 1 2022/03/27 10:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Workbook_Openを起動時以外に呼...
-
エクセルのマクロボタンが編集...
-
別シートのマクロを実行する方法
-
Access終了時にマクロまたはVBA...
-
Application.Runエラー(1004)
-
access2010 コマンドまたはアク...
-
InputBox内の表示について
-
今日の日付の範囲を指定して印...
-
エクセルVBAで、ボタンの文字を...
-
ExcelVBAで右クリックメニュー...
-
シート保護を掛けたまま並べ替...
-
アクセスの更新クエリをフォームで
-
エクセルのマクロ
-
添付ファイルを添付し忘れてい...
-
別シートのトグルボタンを指定...
-
エクセル 当月分のデータを抽出...
-
EXCEL・・検索ボタンをク...
-
オートシェイプの黄色いハンド...
-
マクロ 戻るボタンを押したらシ...
-
マクロとモジュールの違いを教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのマクロボタンが編集...
-
別シートのマクロを実行する方法
-
Access終了時にマクロまたはVBA...
-
Application.Runエラー(1004)
-
シート保護を掛けたまま並べ替...
-
エクセルVBAで、ボタンの文字を...
-
access2010 コマンドまたはアク...
-
マクロ 戻るボタンを押したらシ...
-
InputBox内の表示について
-
特定のシートだけ印刷はマクロ...
-
ExcelのVBAでDisplayalertsで警...
-
マクロが登録できません
-
エクセル VBA SendKeys ループ...
-
今日の日付の範囲を指定して印...
-
AccessでExcelファイルを印刷
-
プロシージャが大きすぎます!
-
エクセルのマクロ
-
Workbook_Openを起動時以外に呼...
-
アクセス:検索フォームボタンに...
-
特定マクロが実行されたか確認...
おすすめ情報