■ 現在のこのページの役立ち度:
表示されない場合こちらのリンクからもご覧になれます。
|
■ このページの役立ち度を評価する:
役立ち度を評価してください。
(1(左):あまり役立たない - 5(右):大変役立った): |
■ ページの共有: |
[ サイト内検索 ]
![]()
カスタム検索
|
#37878-0for の抜け方中沢2001-01-29(月) 11:38
#37882-0RE#37878:for の抜け方みゃお2001-01-29(月) 12:55
#37883-0RE#37878:for の抜け方よねKEN2001-01-29(月) 13:23
#37891-0RE#37883:for の抜け方匿名378912001-01-29(月) 14:43
#37890-0RE#37882:for の抜け方匿名378902001-01-29(月) 14:43
#37882-0RE#37878:for の抜け方みゃお2001-01-29(月) 12:55
#37883-0RE#37878:for の抜け方よねKEN2001-01-29(月) 13:23
#37891-0RE#37883:for の抜け方匿名378912001-01-29(月) 14:43
#37890-0RE#37882:for の抜け方匿名378902001-01-29(月) 14:43
中沢2001-01-29(月) 11:38
for .... nextでの抜け方について質問があります。 たとえば for i=0 to 10 for j=0 to 10 for k=0 to 10 errflag=err_check() ;エラーが発生したらerrflag=trueになる if errflag then exit for next if errflag then exit for next if errflag then exit for next exit sub と多重のループの一番上から抜ける場合は上記のコーディングをしなくては ならないのでしょうか? 私としてはループ毎にExit forで抜けるのはかったるいので for i=0 to 10 for j=0 to 10 for k=0 to 10 errflag=err_check() ;エラーが発生したらerrflag=trueになる if errflag then goto jmp00 ;一気に多重ループから抜ける next next next jmp00: exit sub とやりたいのですが、ループから直接Gotoで抜けるのは問題ありかな?と 思いまして・・・ 詳しい方、お教え下さい。
みゃお2001-01-29(月) 12:55
> とやりたいのですが、ループから直接Gotoで抜けるのは問題ありかな?と > 思いまして・・・ 私はいつも、ど真ん中でExit Subしてますが。。。(汗) 問題あるのはWithブロックの中のループでWithブロックの外へ抜ける場合じゃなかったでしょうか?
よねKEN2001-01-29(月) 13:23
> とやりたいのですが、ループから直接Gotoで抜けるのは問題ありかな?と Goto使わないために、前者のようにやるなら、後者でやる方がいいと思います。 でも、ロジックの工夫で多重ループ、そこからの脱出を避けたり、 (複雑にならずに)回避可能なら、そうした方がいいでしょうけど。
匿名378912001-01-29(月) 14:43
> Goto使わないために、前者のようにやるなら、後者でやる方がいいと思います。 ループしている中で、Gotoによるループアウトをすると、スタックがらみで 問題が発生るのかな?と思たんですよ。(VBが実際に内部的にどうやっているのかは 不明なので予測に過ぎないんですけどね) > でも、ロジックの工夫で多重ループ、そこからの脱出を避けたり、 > (複雑にならずに)回避可能なら、そうした方がいいでしょうけど。 今回はGotoで抜けちゃう方法で行きます。 ども、アドバイス有り難うございました。
匿名378902001-01-29(月) 14:43
> 私はいつも、ど真ん中でExit Subしてますが。。。(汗) > 問題あるのはWithブロックの中のループでWithブロックの外へ抜ける場合じゃなかったでしょうか? そうなんですか?。知りませんでした。 とりあえず、真ん中でExit SubもGotoの先でExit Subも違いがない様な 気がしますので、今回はGotoで抜ける方法で行きます。 ども、有り難うございました。
このページと関連する記事:
#16726-0Withブロックについて2000-02-23(水) 23:12#33835-0RE#33831:EXEファイルでエラーが発生して悩んでいます。2000-11-21(火) 16:09
#302-2二重のループを抜けるには2003-05-14(水) 15:07
#943-1For Next文を途中で抜けて頭に戻るには2004-02-01(日) 10:49
#8287-0Do Until中でループを1つだけ抜けたい2000-03-07(火) 15:59
#717-0Withステートメントについて1999-08-11(水) 11:18
#46622-0MsFlexGridとComboBoxによるオートフィルタについて2001-09-07(金) 10:11
#25139-0コーディングの作法?、常識なのかな?2001-12-05(水) 21:35
#24142-0自動的に増える配列2001-10-29(月) 03:25
#1842-0VBでタイマをかけたいのですが1999-09-14(火) 16:14