• ベストアンサー

マクロの中でマクロを実行中に中止させたい

マクロの中で別のマクロを実行して、それをループさせてます 中のマクロで問題があったとき外のマクロ自体を停止させるのはどうすればいいのですか? Sub A() Do Application.Run "I" Application.Run "II" Loop End Sub ここから マクロIの途中で何らかの条件が合えば、 マクロAを終了するにはどうすれば良いのですか?

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

>マクロIの途中で何らかの条件が合えば、 >マクロAを終了するにはどうすれば ご相談を素直に読めば,条件判断はIの中で行います その際に sub I()  : if 条件成立 then End  : end sub のように仕込みます。

48946
質問者

お礼

有難う御座います Endで全部終わってくれるんですね そういうのも有りなんですね

その他の回答 (1)

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

終了であれば、以下の様な感じでよろしいかと思います。 Sub A() Do Application.Run "I" Application.Run "II" If 条件 = True Then ’何らかの条件が一致したら Exit Sub 'マクロAを終了 End If Loop End Sub Loop又はDoの後にUntil 条件を設定すればLoopを抜けるようにするには、 Sub A() Do Application.Run "I" Application.Run "II" If 条件1 = True Then 条件2 = True End If Loop Until 条件2 = True End Sub

48946
質問者

お礼

有難う御座います このやり方だと、マクロIIが終わってから条件に入るような気がします マクロIの最中でも終わってくれるんでしょうか?

関連するQ&A

専門家に質問してみよう