不要なイベントを削除したい

このQ&Aのポイント
  • フォームにコマンドボタンを置き、イベントプロシージャを作成する際、コマンドボタンの名前を変更すると新たなプロシージャの型が作成されます。
  • 複数のイベントプロシージャが残っている状態で、不要なプロシージャを一気に削除する方法はありますか?
  • 不要なイベントプロシージャを削除したい理由は、量が多すぎてどれが不要なものかわからないからです。
回答を見る
  • ベストアンサー

不要なイベントを削除したい

フォームにコマンドボタン(名前:コマンド0)を置いて、 [イベント プロシージャ]にしてクリックするとVBE画面にプロシージャーが作成されますよね。 しかしそのコマンドボタンの名前を変更して(新しい名前:新コマンド0)、さっきと同じように [イベント プロシージャ]にしてクリックすると新たなプロシージャの型が作成されますよね。 Private Sub コマンド0_Click() End Sub Private Sub 新コマンド0_Click() End Sub こんなかんじで。 そんな事を一杯やり過ぎて、 Private Sub コマンド0_Click() End Sub の方がいっぱい余ってる?浮いてる?イベントに紐づいてない状態なのですが、 量が多すぎてどれが不要なプロシージャーなのかわからないのですが、 一気に削除する方法はありますか? 別にほっといても問題ないとは思うのですが、不要なものは削除したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • m3_maki
  • ベストアンサー率64% (295/459)
回答No.2

一気に削除 とは行きませんが フォームのコントロールのイベントプロシージャでないものは分かります。 オブジェクトボックス(図の左のドロップダウンです) で 「(General)」 を選択すると プロシージャボックス(右のドロップダウン)に イベントプロシージャ 以外のプロシージャが表示されます。 右のドロップダウンでプロシージャを選択すれば そのプロシージャに飛びますので それを削除すれば良いでしょう。 ただし、実際に使用されているプロシージャでも イベントプロシージャでなければ表示されてしまいますので 注意が必要です。

kcdlcjlja8
質問者

お礼

ありがとうございました。

その他の回答 (1)

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.1

Private Sub と End Subの間に何もないときは削除して何ら問題ありません また自分は前後の空白行も削除しています

kcdlcjlja8
質問者

お礼

ありがとうございました。

関連するQ&A

  • フォームモジュール イベントが発動しない半角→全角

    コマンドボタンのコントロール名に「カード」(←これは半角です)とつけて、クリックイベントのプロシージャーを紐づけようとしたら、 Private Sub カード_Click() End Sub になってしまい、そのコマンドボタンをクリックしてもイベントが発生しません。 Private Sub カード_Click()の部分にブレークポイントを設置しても、通過されません。 都合上全て半角でコントロール名をつけてしまったため、コントロール名を変えたくないのですが VBAのフォームモジュールで「カード」(←これは半角です)とすると、 勝手に全角になってしまうのですが、 この機能を止める方法はありますか?

  • 初心者の質問です。VBA

    ボタンを使ったプログラムの作成なんですが、VBEウィンドウで動作を実行することはできるのですが、コマンドボタンを押しても動作せず、文章が黄色に反転するだけなのですが。どういうふうに文章を変えたらよいかおしえてください。 Private Sub 設定_Click() MsgBox "ボタンをクリックしました" End Sub

  • VBA:助けてください。呼び出してもいないのに独立なプロシージャへ、処理が飛んでしまう。アドバイスお願い致します。

    Useform1のコマンドボタンをクリックすると Private Sub CommandButton1_Click() Call 処理 End Sub というように、「処理」を呼び出し。これで終わるようにしていました。しかし、不具合が出てしまい、ステップインで見てみると「処理」からEndSubに行き、その後Useform2のコマンドボタンイベントのEnd Withへ Private Sub CommandButton1_Click() With Userform1 .... End With ←    ・・・ End Sub 上のように矢印の部分へ飛んでしまいます。全く、独立な、コマンドイベントへ飛んで処理されているのです。それも、飛んだ箇所がEnd Withからです。こんなことがあるのでしょうか? Private Sub CommandButton1_Click() Call 処理 Exit Sub End Sub 上のようにExit Subを追加してもやはりそこから飛んでしまいます。 なぜでしょうか?詳しい方アドバイスお願い致します。

  • コマンドボタンのEnterイベント後に、フォーカスを移動したい。

    コマンドボタンのEnterイベント後に、フォーカスを移動したい。 フォームに「TextBox1」(TabIndex=0)「TextBox2」(TabIndex=1)「CommandButton1」(TabIndex=2)の3つのコントロールがある場合。 CommandButton1がクリックされた場合も、TextBox2からCommandButton1に、タブキーまたはエンターキーで、フォーカスが移った場合にも、同じ処理を行い、処理結果によってTextBox1やTextBox2にフォーカスを移したいと考えています。 以下のようなサンプルを作成しました。 Private Sub CommandButton1_Enter() CommandButton1_Click End Sub Private Sub CommandButton1_Click() MsgBox ("OK") TextBox2.SetFocus End Sub この場合、CommandButton1_Enterのイベントが起こった場合、CommandButton1_Click()のTextBox2.SetFocusは効きません。 (正確には、CommandButton1_Enterイベントが終わった時点で無効でしょうか。) Enterイベントは、フォーカスが移動する前に発生するため、このイベントが終わった後に、そもそもの動作に戻り、フォーカス移動が発生してしまうからなのだと思っております。 要は、コマンドボタンにタブキーやエンターキーでフォーカスしても、コマンドボタンをクリックしたのと同じ処理を行い、所定の位置にフォーカスを持っていきたいのですが、どのように行えば良いか、わからない状況です。 よろしくお願いいたします。

  • VB6でClickイベントを一時的に削除したい

    お世話になります VB6で二つのコンボックス内でお互いのリストを編集する処理を作りたいのですが、 イベントを止めないと、編集時に相手のコンボックスにClickイベントが発生して無限ループになってしまいます。 そこでRemoveHandler、AddHandlerで一時的にイベントを停止させたいのですが、 今度は「メソッドまたはデータメンバが見つかりません。」のエラーが出てしまいます。 ※Me.を付けても同じ結果でした どのように記述したらClickイベントを止められますか? Private Sub Combo1_Click() RemoveHandler Combo2.Click, AddressOf Combo2_Click ここでCombo2の編集 AddHandler Combo2.Click, AddressOf Combo2_Click End Sub Private Sub Combo2_Click() RemoveHandler Combo1.Click, AddressOf Combo1_Click ここでCombo1の編集 AddHandler Combo1.Click, AddressOf Combo1_Click End Sub

  • クリックイベントなのに、2回クリックしないとフォー

    クリックイベントなのに、2回クリックしないとフォームが閉じないです。 フォームに閉じると言うコマンドボタンがあり、クリックイベントで Private Sub cmd_閉じる_Click() DoCmd.Close acForm, Me.Name End Sub としてるのですが、なぜか1回ボタンを押しただけではフォームが閉じません。 2回目押した時にフォームがとじます。 ダブルクリックでも閉じます。 Private Sub cmd_閉じる_Click() 'DoCmd.Close acForm, Form_Fフォーム.Name End Sub のように、フォーム名を指定すると1回のクリックで閉じます。 しかしMe.Nameだと2回目じゃないと閉じない理由がわかりません。 Fフォームは他フォームから DoCmd.OpenForm Form_Fフォーム.Name, acNormal で開いたから2回クリックしないと閉じないのでしょうか?

  • アクセスVBAのエラーについて

    フォームを閉じるためにフォームにボタンを置いて、イベントプロシージャに下記のように書き込みました。すると添付画像のエラーが返ってきてマクロが動きません。 Private Sub コマンド103_Click() On Error GoTo Err_コマンド103_Click DoCmd.Close Exit_コマンド103_Click: Exit Sub Err_コマンド103_Click: MsgBox Err.Description Resume Exit_コマンド103_Click End Sub で、「ファイル-オプション-現在のデータベース」の”フォームの表示”を問題のフォームに切り替えたら問題なく動作します。 つまり”フォームの表示”で選んだフォームでしかコマンドボタンのマクロが動きません。全てのフォームでマクロが動くにはどうしたらよいのでしょうか?

  • エクセルの個人用マクロブック

    「個人用マクロブック」に abc というマクロが登録されています。 コマンドボタンをクリックして abc を実行できるようにしたいのですが。 Sub abc () 処理内容 End Sub Private Sub CommandButton1_Click() Call abc End Sub コマンドボタンをクリックするとエラーになってしまいます。エラー内容は「SubまたはFunctionが定義されていません」です。 VBE画面から直接 abc を実行した場合はエラーになりません。 どこを直せばいいのでしょうか。

  • フォームを開く時のイベント処理

    Visual Basic 6.0 あるフォーム読込時イベント[Private Sub Form_Load()]で コマンドボタンにフォーカスを移動しようとしたら、エラーしてしましました。 Private Sub Form_Load() CommandButton.SetFocus ’プロシージャの呼び出し、または引数が不正です End Sub Form_Open や BeforeUpdate ? 開いた後にフォーカスをセット出来る イベント処理は無いでしょうか? ご教授願います。

  • Access VBA Sub のパラメーター

    フォームに作ったボタンのイベントとして、 「イベント プロシージャ」→「クリック時」→ 「・・・」で サブルーチンを作ろうとしています。 「・・・」で Private Sub 名前_Click() が出ますが、パラメターを、例えば「名前_Click(p1)」と付けると 「イベントプロパティに指定した式 クリック時 でエラーが発生しました: ・・・」 が出ます。 (1)_Click()には、パラメターを設定できないのでしょうか? (2)もし、付けられるのでしたら、付ける方法を教えて下さい (3)もし、_Click()には、パラメターを設定できないのでしたら、代替え方法を教えて下さい よろしくお願いします。

専門家に質問してみよう