![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.3ベストアンサー
- 回答日時:
> 現在プログラムを作っているんですがある行にジャンプしたくなりました・・・
> どうすればいいんでしょうか?
GoTo文を使用します。
例えば・・・。
Private Sub Command1_Click
On Error Goto ErrLine
Call Method(Args......)
Exit Sub
ErrLine:
Call MsgBox(Err.Description, vbCritical, CStr(Err.Number))
End Sub
上記の例では、エラーが発生した際にラベル行の処理が実行されます。
GoTo文に関しては、構造化プログラミングを破壊する、ソースコードの可読性(読みやすさ)を損なう、といった問題があり、高級言語では使用を推奨されません。
(機械語レベルではSelect Case文も、ループも、ラベル行へのジャンプですが・・・)
VBでGoTo文を使用するのは、下記のような場合です。
・例外処理
・多重ループからの脱出
・ループ内での「1回飛ばし」のような変則的制御
上記以外の処理、特に正常系の処理でGoTo文が必要と感じたら、モジュール設計に問題がないか検討の余地があると思われます。特定機能の実行部分へのジャンプであれば、ほとんどの場合は適切な関数・サブルーチン分割で解決できるはずです。
ちなみに、VB.NETでは構造化例外処理がサポートされており、従来は必須とされたOn Error GoTo ......ステートメントを使用せずに例外処理の記述が可能となっています。(従来の構文も使用可能)
また、VB6.0以前でも、On Error Resume Nextステートメントを使用すれば、インラインエラー処理が可能です。記述を工夫すればTry....文に近い形にすることもできます。
この回答へのお礼
お礼日時:2003/01/13 18:19
ありがとうございました
新しく問題が出たのでそちらも分かりましたら教えてください。
http://www.okweb.ne.jp/kotaeru.php3?q=444476
No.2
- 回答日時:
GOTO
を調べてみてください。色々問題もありますが、必要であれば使用するのもよいかと思います。もし、お時間に余裕があるのならプログラムの構造を今一度見直すのもよいかと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(セキュリティ) システムのセキュリティに詳しい方〜 飛行機のチケット使わなかったときのチケット費用補償保険/旅行キャ 1 2022/04/06 09:49
- その他(コンピューター・テクノロジー) 量子コンピュータの動作原理がわかりません。同じビットが、1でも0でも有って良いだろうか? 3 2023/02/04 03:20
- Android(アンドロイド) スマホGメールラベルについて、 あくまでPCじゃなく スマホでの質問です。 現在は、Androidス 2 2022/12/05 01:49
- 飛行機・空港 飛行機のX線検査、身体検査について質問です。 私は普段チェーンのスマホショルダーやイヤリングを見つけ 3 2023/01/14 19:33
- その他(趣味・アウトドア・車) アマチュア無線の「村」まで入った「市郡区番号リスト」を探しています 4 2022/08/27 07:07
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 3 2022/10/27 17:44
- FX・外国為替取引 FXの必要証拠金について 2 2022/06/19 03:52
- 固定電話・IP電話・FAX 来月からNTTのナンバーディスプレイが無料。では今オプションで契約している人はどうなる? 4 2023/04/11 15:43
- 飛行機・空港 エアフランスのマイルを提携航空会社JALに移行する方法 3 2023/01/08 20:58
- Java Java 配列<選挙> 4 2023/07/31 15:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
do-while文が禁止される理由
-
__asm int 3でのブレイクポイン...
-
エクセルVBAで Do While (1)って?
-
入力した数値を倍々するプログラム
-
エクセルでC言語のfor文と同じ...
-
break文でループを一気に抜ける...
-
C言語forループが完結した場合...
-
UWSCにてある一定の動作を無限...
-
ループを途中で抜けたいのですが。
-
PIC のプログラムについて ど...
-
プログラムで関数は使わない方...
-
アルゴリズムです!四つの数字...
-
explodeと条件分岐
-
無限ループ対策
-
信頼区間の1.96や1.65ってどこ...
-
2÷3などの余りについて
-
CTRL+Dでループを抜けるには
-
「指定されたキャストは有効で...
-
#define _CRT_SECURE_NO_WARNIN...
-
ラップ関数とはどんなものですか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
break文でループを一気に抜ける...
-
ループを途中で抜けたいのですが。
-
入力した文字列から母音だけを...
-
do-while文が禁止される理由
-
入力した数値を倍々するプログラム
-
C言語forループが完結した場合...
-
if文の中にfor文なのか、for文...
-
プログラミングC言語についての...
-
エクセルVBAで Do While (1)って?
-
For文の終了値を関数にしても問...
-
エクセルでC言語のfor文と同じ...
-
Delphiで・・・
-
ループの特定入力終了
-
UWSCにてある一定の動作を無限...
-
C言語、自己参照構造体のプログ...
-
C言語 数字を削除する関数
-
Cプログラムが終了しない
-
Excel VBAで年度をまたぐ期間の...
-
プログラムで関数は使わない方...
-
VBScriptでSQLに接続し、CSV出...
おすすめ情報