色彩を教える人になるための講座「色彩講師養成講座」の魅力とは>>

マクロの中で別のマクロを実行して、それをループさせてます
中のマクロで問題があったとき外のマクロ自体を停止させるのはどうすればいいのですか?

Sub A()
Do
Application.Run "I"
Application.Run "II"
Loop
End Sub

ここから マクロIの途中で何らかの条件が合えば、
マクロAを終了するにはどうすれば良いのですか?

gooドクター

A 回答 (2件)

>マクロIの途中で何らかの条件が合えば、


>マクロAを終了するにはどうすれば

ご相談を素直に読めば,条件判断はIの中で行います


その際に

sub I()
 :
if 条件成立 then End
 :
end sub

のように仕込みます。
    • good
    • 1
この回答へのお礼

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

お礼日時:2014/09/01 09:03

終了であれば、以下の様な感じでよろしいかと思います。


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
    • good
    • 0
この回答へのお礼

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

お礼日時:2014/09/01 09:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング