- ベストアンサー
VBA マクロの削除について教えてください
VBEのWorksheet上にある、下記のコードが消えません。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) End Sub 全選択して、Deleteするのですが、消しても復活しています。 これ以上方法が思いつかないので、ご教示をおねがいします。
- blue_lace
- お礼率58% (10/17)
- その他(プログラミング・開発)
- 回答数2
- ありがとう数1
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> 全選択して、Deleteするのですが これで消えています。 > 消しても復活しています。 消えたかどうか覗き見すると自動的に作られます。 出歯亀はいけません。 セキュリティの警告が出なくなればOKです。 それでも警告が出るなら、原因は他にあります。
その他の回答 (1)
- entap
- ベストアンサー率45% (78/172)
http://www.geocities.jp/chiquilin_site/data/071220_removing_a_module.html このサイトを参考にしてください。 マクロの一部だけ、というなら、マクロのその部分をコメントにして、 (行の先頭に'をつける) 削除、で消えるのではないでしょうか? (手元環境で再現しないので無責任ですが)
関連するQ&A
- エクセルvba (ByVal Target As Range)について
シートのイベントプロシージャーが Private Sub Worksheet_SelectionChange(ByVal Target As Range) End Sub となりますが (ByVal Target As Range)部分は何なのでしょうか? 何のためにあるのかわかりません。 Private Sub Worksheet_SelectionChange() End Sub としたらエラーが返ってきました。 理由を教えてください。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- マクロの疑問
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address <> "A2" Then Range("A2").Select End If End Sub とすると、どのセルを選んでもA2に飛ぶのに、 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address = "A3" Then Range("A2").Select End If End Sub とすると、A3を選んでも全く移動しないのはなぜでしょうか。 なにか落とし穴がありそうで。。。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- VBAでエラートラップがうまくいきません。
VBAで次のようなプロシージャを実行してみました。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Value = " " Then ~コード~ END IF END SUB すると複数のセルが選択されるとエラーがでます。そこで次のようにしてみました。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) On Error GoTo エラー処理 If Target.Value = " " Then On Error GoTo 0 ~コード~ END IF EXIT SUB エラー処理: EXIT SUB END SUB ところがこれでもやっぱりIF文のところでエラーがでます。 当方初心者でなぜエラーがでるのかわかりません。 わかりやすくご教授ください。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- VBE画面を閉じるコード
alt+F11で、VBE画面を開いていますが、 Private Sub Worksheet_SelectionChange(ByVal Target As Range) End Sub で、どこかのセルをクリックしたら、VBE画面を閉じたいのですが、コードを教えてください。 エクセルのアプリケーションのみ表示させたいです。 添付画像は、 エクセル(上) VBE(下) が開いてますが、VBEをVBAコードを実行して閉じたいです。
- ベストアンサー
- オフィス系ソフト
- エクセルマクロ(VBA)で指定したセルが変化したときに実行するには?
VBAでsheetの中のworksheet_changeなどでマクロを書くと、そのシー トの中のどのセルを変化させてもマクロが実行されるのですが、これ を、A1とc1とc2が変化したときだけ処理を実行させたいのです。 以下のマクロのどこかを編集すると、そのようなことが出来るのでし ょうか? Private Sub Worksheet_SelectionChange(ByVal Target As Range) ----実行する内容---- End Sub Private Sub Worksheet_Change(ByVal Target As Range) ----実行する内容---- End Sub
- ベストアンサー
- オフィス系ソフト
- シートのイベント VBA
シートをクリックしたらシートをクリアしたいのですが クリックするセルがA1の場合は、マクロを実行させたくないのですが 下記のコードだとエラーになってしまいます。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Target.Range = Range("a1") Then Cells.Clear End If End Sub ”Range("a1")でなければ、Cells.Clearする” にはどうすればいいですか?
- ベストアンサー
- オフィス系ソフト
- エクセル デバッグできるのとできないのがある
シートイベントについて教えてください。 シートモジュールに --------------------------------------------------------- Option Explicit Private Sub Worksheet_Activate() MsgBox "" End Sub Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) MsgBox "" End Sub Private Sub Worksheet_Change(ByVal Target As Range) MsgBox "" End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) MsgBox "" End Sub --------------------------------------------------------- と記載した時に、 F8で動かせるのは、Worksheet_Activateだけなのですがなぜでしょうか? ほかのイベントは、F8で実行させても、OSの音が鳴るだけで、マクロの実行はされません。 ご回答よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルVBAで Cancel=Trueの使い方
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address <> "$A$1" Then Exit Sub Cancel = True MsgBox "キャンセルしました" End Sub Private Sub Worksheet_Deactivate() Cancel = True MsgBox "キャンセルしました" End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Cancel = True MsgBox "キャンセルしました" End Sub 以上のように使ってみましたが、どれも「キャンセルしました」とメッセージは出るものの、直前の操作(入力、シート切替、セル移動)はキャンセルされませんでした。 どこが間違っているのでしょうか?
- ベストアンサー
- オフィス系ソフト
- エクセルVBA/イベント発生でコピペ不能はなぜ?
シートに以下のマクロを設定すると、そのシート内ではコピーしたもののペーストが不能になります。 どうしてでしょうか? Private Sub Worksheet_SelectionChange(ByVal Target As Range) Target.Interior.ColorIndex = 6 End Sub
- ベストアンサー
- オフィス系ソフト
お礼
回答ありがとうございます。