VBA講座11 繰り返し処理の中に条件分枝を入れます

 VBA 数学マクロ入門講座11回目です。
「この講座を通して、少しでも VBA仲間が増えるといいなあ」
と願いつつ毎日頑張って記事を書いてます。今回は約数を求めるプログラムです。

約数を求めます

 16 の約数を求めるマクロです。
 16 を 1 から順に割っていって、割り切れたら約数と判定します。

 Sub 約数()

 Dim i As Integer

 For i = 1 To 16

  If 16 Mod i = 0 Then

   Debug.Print i;

  End If

 Next i

 End Sub

 マクロを実行すると、イミディエイトウィンドウに 16 の約数「 1, 2, 4, 8, 16 」が表示されます。

繰り返し処理の中に条件分枝があります

 For...Nextステートメントの中に IF...Thenステートメントが入れ子になっています。カウンタ変数 i を1つずつ順に加えながら、

 16 を 1 で割った余りが 0 ⇒ 表示する
 16 を 2 で割った余りが 0 ⇒ 表示する
 16 を 3 で割った余りが 0 ⇒ 表示する
 ・・・・・・・・・・・・・・・・・・・

という処理を繰り返しています。

「;」で横書きします

 5行目のコード

Debug.Print i;

にセミコロン「;」が付いていますけど、これは通常はイミディエイトウィンドウに縦に並ぶ表示を横書きにして見やすくするという、ちょっとしたテクニックです。
 
 次回は今回のマクロをもう少し一般化して、インプットボックスから好きな値を入力できるように書き直します。

 ≫ 入力された数値の約数を求めるマクロ
 ≫ 数学マクロ講座トップページへ戻る

スポンサーリンク
末尾広告
末尾広告

コメントをどうぞ

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください