Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


38779 / 76732 ←次へ | 前へ→

【43085】孫SUB内で プログラム全てを終了する方法
質問  こま  - 06/10/1(日) 21:01 -

引用なし
パスワード
   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

1 hits

【43085】孫SUB内で プログラム全てを終了する方法 こま 06/10/1(日) 21:01 質問
【43087】Re:孫SUB内で プログラム全てを終了する方... [名前なし] 06/10/1(日) 21:35 発言
【43088】Re:孫SUB内で プログラム全てを終了する... neptune 06/10/1(日) 21:40 回答
【43149】Re:孫SUB内で プログラム全てを終了する... こま 06/10/3(火) 19:33 お礼

38779 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free