[[20210519173839]] 『マクロを実行したあと、VBAが動かない』(ライン) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロを実行したあと、VBAが動かない』(ライン)

大まかな説明で分からないかと思いますが、質問させて下さい。

マクロを実行し、ある表のデータを集計しました。
その後、セルをダブルクリックでユーザーフォーム(リストボックス)が起動するVBAがまったく動きません。
コマンドボタンを設定しユーザーフォームを起動させてみたところフォームはひらいたのですが、エラーがでてしまいます。
ブックを一旦保存し、再度立ち上げてユーザーフォームを起動すると普通に動きます。
また、別ブックで同じデータを集計して、そのシートを問題のブックに移動させてもフォームは動きませんでした。
大雑把でいいので問題そうなアドバイスを頂けませんでしょうか。

< 使用 Excel:Excel2013、使用 OS:unknown >


 コードを見せずにデバッグしろと。無茶ぶりですな。

 とりあえず、マクロが動かなくなったときに、イミディエイトウインドウで、
 Application.EnableEvents=True
 として Enterキー押下してみて
 それで動くようになるなら、そういうことです
(´・ω・`) 2021/05/19(水) 17:51

編集がかぶりましたがそのまま。

モノ(コード)を見ないとなんとも言えませんが、「まったく動かない」と「エラーが発生する」は別現象ですから、それぞれステップ実行して検証してみてはどうですか?

(もこな2) 2021/05/19(水) 17:52


失礼しました。
コードを出さないととは思ったのですが、それだよなんてアドバイスがあるかなぁと思ってしまいました。
ちなみに(´・ω・`)さんのイミディエイトウインドウで、 Application.EnableEvents=Trueをやってみたところ動きました。
コードを出させていただいた方がよろしいでしょうか?

(ライン) 2021/05/19(水) 18:01


コードの一つがApplication.EnableEvents=FalseになっていたのでTrueに変更したところ治りました。
ありがとうございました。
(ライン) 2021/05/19(水) 18:08

 コードを見てないのでわかりませんけど、
 なにか意図があって、
 Application.EnableEvents=False
 にしていたのではないのでしょうか?

 適切な場所で、
 Application.EnableEvents=True
 を実行すればいいわけですが、どこが適切かはコードを見てないので解りません。

 単純に
 Application.EnableEvents=False
 を
 Application.EnableEvents=True
 に変更してよいかどうかもわかりません。
 なにか副作用があるんじゃないでしょうかね
(´・ω・`) 2021/05/19(水) 18:12

>コマンドボタンを設定しユーザーフォームを起動させてみたところ
>Application.EnableEvents=Trueをやってみたところ動きました。
ということは、なんらかの操作でイベントが無効になっていたため、(シートに設置した)コマンドボタンのclickイベントが発生していなかったということですよね。
それは「まったく動かない」ことにつながりますが、「エラーが発生する」とは別なのではありませんか?

>コードの一つがApplication.EnableEvents=FalseになっていたのでTrueに変更したところ治りました。
既に、(´・ω・`)さんがコメントされているように、意図して一時的にイベント無効にしているのでしょうから、安易にTrueにして良いとはおもえません。

想像するに

 (1)実行時エラーが発生する
 (2)「デバッグ」するか「終了」するかExcel君が聞いたときに「終了」を選ぶ
 (3)正常に処理されれば、「Application.EnableEvents=True」するはずだったのに
   (2)で終わらせちゃったからFalseのままになってしまった。
 (4)イベント無効になっているから、(シートに設置した)コマンドボタンのclickイベントが発生せず
   【まったく動かない】となった

というのが事の真相じゃないですかね。

(もこな2) 2021/05/19(水) 18:22


ちょっと訂正
>セルをダブルクリックでユーザーフォーム(リストボックス)が起動するVBA
ですから、「Worksheet_BeforeDoubleClick」イベントでしたね。失礼しました。

(もこな2) 2021/05/19(水) 18:24


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.