| 
    
     |  | ▼山野 さん: おはようございます。
 
 >マクロaaaのなかでマクロbbbを実行します。
 >マクロbbbのコードの一部にはgoto JUMP1という文があり
 >このJUMP1はマクロaaaにあるようにしたいのです。
 
 ふ〜ん、ここでGoto文論議をする気はありませんが、
 このようなコードを書かないように
 40年以上前にダイクストラが構造化プログラミングを
 提唱したと思いますが、いかがですか?
 
 
 >
 >sub aaa()
 >:
 >  'マクロbbbの実行
 >  bbb
 >:
 > JUMP1:
 >:
 >sub
 >
 >
 >sub bbb()
 >:
 > goto JUMP1
 >:
 >sub
 
 これ、
 Sub aaa()
 Dim result As Long
 result = bbb
 If result = 0 Then
 MsgBox "bbbで0が返った"
 End If
 MsgBox "ccc"
 End Sub
 Function bbb() As Long
 bbb = Int(Rnd() * 2)
 End Function
 
 bbbから返ってくる値によって、aaa内でIf文等で
 分岐すれば、同じことが出来ますよね?
 
 これらのことが分かっていて、
 尚、処理速度やメモリー消費が少ないからという理由で
 Goto文を使いたいというなら、VBAではなく、他の処理速度が
 速い言語を使うことをまず考えたほうが良いと思いますけどねえ!!
 
 このサイトでもGoto文を使用したコード例は、少ないけれど、
 極たまに見かけますが、それは、Goto文を使った方が分かりやすい
 とかコードがすっきりするというような例で
 ご質問のようなコードが分かりづらくなるような使い方ではありません。
 
 
 私自身は、Goto文絶対不使用論者ではないけれど、
 構造化プログラミング可能言語で使ったことはありませんね!!
 
 |  |