| 
    
     |  | SUBを重複して実行している場合に、 現在のSUBを抜けるのではなく、プログラムをその場で終了するコマンドはありますでしょうか?
 
 例えば、下記のプログラムの場合、
 1.A1を実行し、#1で終了した場合、変数attentionに「1」が残ってしまう。
 2.次に
 Cells(1, 1) = "" に変更して、A1を実行する。
 本来なら、C1まで実行したいのに、
 attenntion=1が残ってしまっている為に、#1で停止してしまう。
 3.改善として、B1の#2で条件を満たした場合、
 その場で、プログラムを終了する(A1も終了する)
 という風に変更したらどうかと考えました。
 
 
 上記以外に対策があればあわせて教えていただけたらと質問させていただきました。
 よろしくお願いいたします。
 
 
 例えのプログラムです------------------------------------
 Option Explicit
 Public attention As Byte
 
 Sub A1()
 B1 'プログラムを実行するか否かを判断 B1 を呼ぶ
 If attention = 1 Then 'attention=1の場合は、実行=否と判断し、終了する。
 MsgBox "終了", vbExclamation
 Exit Sub '#1
 End If
 
 C1
 End Sub
 
 Sub B1() 'プログラムを実行するか判断する
 If Cells(1, 1) = 1 Then #2
 attention = 1
 Exit Sub
 End If
 End Sub
 
 Sub C1() '実際に計算したい内容
 Cells(2, 1) = Cells(3, 1) + Cells(4, 1)
 End Sub
 
 
 |  |