過去ログ

                                Page     647
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼繰り返しをつかって  conan 03/1/30(木) 0:05
   ┗Re:繰り返しをつかって  ポンタ 03/1/30(木) 0:24
      ┗Re:繰り返しをつかって  conan 03/1/30(木) 16:53

 ───────────────────────────────────────
 ■題名 : 繰り返しをつかって
 ■名前 : conan
 ■日付 : 03/1/30(木) 0:05
 -------------------------------------------------------------------------
   sub a1()
’sub a1の内容
end sub

sub a2()
’sub a2の内容
end sub

sub a3()
’sub a3の内容
end sub

という感じでコードを書いてあるとして
違うプロシージャに
sub b1()
 a1
 a2
 a3
end sub
と書いているコードをForNextなどを使って
aを変数化して書く方法はあるんでしょうか?
 ───────────────────────────────────────  ■題名 : Re:繰り返しをつかって  ■名前 : ポンタ  ■日付 : 03/1/30(木) 0:24  -------------------------------------------------------------------------
   Application.Run
を使えばできる、と聞いたことがあります。

でも、できればやらないほうが良いようです(理由は知りません)。

a1、a2、a3の内容がよく似てるのなら、
引数をつけてプロシージャを呼び出すことで
繰り返しが使えることがあります。

こんな感じです。

Sub test()
  Dim i As Integer
  a1
  a2
  a3
  For i = 1 To 3
    Call a0(i)
  Next
End Sub
Sub a0(Num As Integer)
  MsgBox ("a" & Num & "です")
End Sub
Sub a1()
  MsgBox ("a1です")
End Sub
Sub a2()
  MsgBox ("a2です")
End Sub
Sub a3()
  MsgBox ("a3です")
End Sub


3260も読んでたんですけど、
あまり詳しくないので出て行きませんでした。
 ───────────────────────────────────────  ■題名 : Re:繰り返しをつかって  ■名前 : conan  ■日付 : 03/1/30(木) 16:53  -------------------------------------------------------------------------
   ポンタさん
毎度お答えありがとうございます。

確かにapplication.runはあまりよくないらしいですね。
似たような質問をしたとき、他の方にそう聞いたのですが
今回は多少内容が違っていたので、
もしかしたらいい方法があるかなと思い、
質問してみました。
ポンタさんに回答していただいた方法を参考にして、他の方法を
考えてみたいと思います。

しかし、この掲示板を見て繰り返し構文(For Nextだけですけど)を
勉強して利用してみるとコードが、すごくスリムかつ楽に
書くことができるものですね。
今までは、ForNextとかの繰り返し構文は知ってはいたんですが
応用の仕方がわからなくて、一々繰り返してコードを書いていたので、
とても無駄な作業をしていたなぁと思う今日この頃です・・・。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 647