鋼管杭の断面諸元計算(1)に引き続き、Excel2013VBAで計算します。
今回は、For~Nextステートメントで、VBAで鋼管杭の断面諸元計算を実行する!の計算処理を書き直してみます。
鋼管杭の断面諸元計算のプロシージャ
繰り返し計算を利用するために、まず、変数を置きなおします。
鋼管諸元(1)の変数を以下のように置きなおします。
直 径 A(0) → B(0,j)
板 厚 A(1) → B(1,j)
腐食しろ A(2) → DT
杭の内径 A(3) → DI
面 積 B(0) → B(2,j)
断面2次モーメント B(1) → B(3,j)
断面係数 B(2) → B(4,j)
jは、j=0が腐食なし、j=1が腐食ありとして、B(I,j)を2次元配列で定義しました。
2次元配列B(i,j)は、例えば、B(4,1)と定義したとき、
B(0,0) B(1,0) B(2,0) B(3,0) B(4,0)
B(0,1) B(1,1) B(2,1) B(3,1) B(4,1)
の計10個の変数を定義したことになります。
For~Nextステートメントでの書き換え
繰り返し計算にはFor~Nextステートメントを利用します。
For カウンタ変数 = 初期値 To 最終値 [Step 増減値]
ここに計算処理を記述します
Next [カウンタ変数]
※[ ]は省略できます。
Step 増減値は 初期値から1ずつ増やしていくなら1(1つとばしに計算)、2ずつ増やしていくなら2(2つずつとばしで計算)とします。1を使う場合には省略することが多いと思います。
また、For~Nextステートメントの中に、For~Nextステートメントを入れて計算させる場合があります。上から順番に処理されるので、最初のFor~Nextステートメントで変数jが、次のFor~Nextステートメントで変数iが定義されるときは、まずjが最初の値に固定された状態で、iについて繰り返し計算が実行されます。それが終わると、次のjの値が固定された状態で、iについて繰り返し計算が実行されます。これをjが最後の値まで繰り返し計算されて終了します。
上のように書き換えられました。これを実行すると、VBAで鋼管杭の断面諸元計算を実行する!と同じ値が出力されます。
コメント