
taka



最新記事 by taka (全て見る)
- 『雑記』最近の私の話~ - 2019年9月26日
- 【動画】自作パソコン構成変更!ケースをNZXT H500に交換しました! - 2019年6月5日
- VBA 『Array関数』指定した要素で配列を作成する - 2019年5月23日
- 「動画」初完全ワイヤレスイヤホン『Jabra Elite Active 65t』 - 2019年5月17日
- VBA 日付で令和を簡単に判定してみよう - 2019年5月7日
どうも、taka(@takabou63)です(^^♪
今回は変数の花形!
繰り返し処理についてです(^^♪、VBA・・・プログラムを勉強していくのなら必ず必要になってくるのが、この「繰り返し処理」です。
繰り返し処理をする方法は他にもありますが、繰り返し処理が初めての方には回数を自分で決めることができる【For〜Next】がおすすめですので、今日は【For〜Next】で繰り返し処理を記述していきます。まずは基本の使い方を見ていきましょう(^^♪
繰り返し処理の基本的な使い方【For〜Next】
というわけで、まずは「For〜Next」の基本的な使い方がこちら↓(^^)
Sub sample() Dim カウント変数 As Long For カウント変数= スタート値To ゴール値 〜繰り返す処理〜 Next 変数名 End Sub
For〜Nextはスタート値とゴール値に任意の数値を入れて処理をすることができます(^^♪
カウント変数は処理を繰り返すたびに値が1ずつ加算されていき、カウント変数がゴール値になるまで繰り返し処理を行います( ..)φメモメモ
つまり「1 to 10」 なら10回処理、「5 to 10」なら5回の処理が実行されるということですね(^^♪
では実際に動かしてみましょう ^^) _旦~~
下のコードはセルA1~A10に1を記入するコードです。
Sub sample() Dim i As Long For i = 1 To 10 Cells(i, 1).Value = 1 Next i End Sub
- 宣言は変数に数値を入れるのでLongを宣言します。
- For i から変数に入れたい数値のスタート値(1)とゴール値(10)を指定する
- Cells(i,1)のiにはスタート値の1からゴール値10を順に繰り返していく。
- Nextは折り返し地点になりForの後に戻る。
これがFor〜Nextの基本の使い方になります(^_-)-☆
変数にSTEPを追加する
つづいて少しだけFor〜Nextの応用の使い方「STEP」について(^^♪
基本的にFor〜nextの変数はスタート値から順に1ずつ繰り返していくのですが、STEPを追加することで変数に数値を加算することができます。
Sub sample() Dim i As Long For i = 1 To 10 Step 2 Cells(i, 1).Interior.ColorIndex = 3 Cells(i, 1).Value = i Next End Sub
このコードを実行すると下記画像のような結果になります(-ω-)/


Step 2を追加するとカウント変数が2ずつ加算されていくことになるので、1.3.5.7.9という数値を変数に代入されることになります(^^)
Stepを追加した場合はゴール値の数値以上かどうかを判定しますので、上記のコードの場合は9で止まるという事になります
For〜Next中にFor〜Nextを入れる【入れ子】
さて、繰り返し処理に慣れてきたらぜひ実践していただきたいこと・・・それは繰り返し処理に、繰り返し処理を入れ込む【入れ子】です(^^♪
下記のコードは変数Aの中に変数Bを入れ子することによってCells(1,1~10)を繰り返し、終了したらCells(2,1~10)を処理していくコードになります。
Sub sample() Dim A As Long Dim B As Long For A = 1 To 10 For B = 1 To 10 Cells(A, B) = 1 Next B Next A End Sub


画像を見ていただくとわかると思いますが、セルのA1(Cells1,1)~J10(Cells10,10)まで数値が入力されましたね(^^)/
このコードは今後複雑なシステムを作成するのに必ず役に立つことなのでぜひ覚えておいてください(^^♪
習うより慣れろ、という言葉があるように一度この上記のコードを編集して実行をしてみてどこがどのように変わるのかを自分で確認するのが一番覚えるかと思います(^^♪
ぜひ一度お試しください(^^)/
フォロー・チャンネル登録お願いします
VBA以外についてのブログはこちら↓
https://yb-log.com/■Twitterフォロー
Follow @taka_pc1027■YouTubeチャンネル登録
コメントを残す