2023.07.04スポンサーリンクみなさん、こんにちは。今回はExcelマクロVBA入門の6回目です。前回は変数について紹介しました。前回の記事はこちら今回は繰り返し処理と最終行数の取得について紹介します。「ブログ記事とオリジナル無料教材を使ってマクロVBAの基礎を学ぼう!!」ということで、ブログにてVBA基礎の習得を目指した記事をアップしていきます。演習2まとめ繰り返し処理とはExcelでのデータ処理において、繰り返し処理を行う場面はたくさんあると思います。・・1000行分のデータがあり、1行ずつ合計を出していく。1000行分のデータがあり、ある数値が条件を満たしているかすべて確認する。全シートの特定のセルのデータを集計する。全ブックの特定のシートの特定のセルを集計する。これらの処理は関数を使っても可能ですが、日々更新されていくデータであれば(例えば、日々行数が増えていく、シートが増えていくなど)、増えた行数分だけ手動で関数をコピーして対応していくと思います。それらを全て自動化できるということです。ここまでの記事と、更にこの記事を読んでいただければ、そういった自動化を自分自身で行うことが可能になります。スポンサーリンクFor~NextステートメントFor~Nextステートメントは、指定した回数だけ操作を繰り返すことができます。開始値と終了値を指定します。Nextで変数に1が加算されます。For~Nextステートメント(例)下記のコードでメッセージボックスに1~5までを表示します。'変数iをを宣言します。'変数iに開始値「1」と終了値「5」を設定します。'変数iに1が入ります。'Nextで変数に1が加算されます。※変数iが5になるまで「For~Next」がループします。Until~Loopステートメントは指定した条件を満たすまで操作を繰り返します。先程のFor~Nextステートメントは開始値と終了値が決まっていました。Until~Loopステートメントは、繰り返す回数が決まっていない処理で、その代わりに条件を満たすまで操作を繰り返します。Until~Loopステートメント(例)下記のコードでメッセージボックスに1~5までを表示します。'変数iをを宣言します。i+1i=i+1は、変数を加算する時に使われる定番の計算式です。iに1を加算して、また更に先ほど加算されたiに1が加算されて・・・と雪だるま式に変数iが加算されていく式です。While~Loopステートメントは指定した条件を満たす間は操作を繰り返します。Until~Loopステートメントは指定した条件を満たすまででした。While~Loopステートメントは、繰り返す回数が決まっていない処理で、その代わりに条件を満たす間は操作を繰り返します。While~Loopステートメント(例)下記のコードでメッセージボックスに1~5までを表示します。'変数iを宣言します。Subスポンサーリンクスポンサーリンク演習1レジュメ:「9.演習」シート使用それぞれの表の合計フィールド(黄色の塗りつぶし部分)に「数量×単価」の値を入れていきます。9-1はForNextステートメント、9-2はDoUntilステートメントを使います。'変数iに開始値「8」と終了値「14」を設定します。'変数iが式に入ります。'Nextで変数に1が加算されます。'変数iが式に入ります。上記の繰り返し処理については、最終行が明確に設定されています。日々データが増えていき処理したい行が増えていく場合は、最終行が変わっていきます。そこで最終行が何行目なのか?を探してくれるコードが必要になります。それが下記のコードです。Cells(Rows.Count,1).End(xlUp).Row上記コードで、Cells(Rows.Count,1)は1列目のワークシートの最終行を表しています。Cells(1048576,1)です。(Excel2003なら65536です).End(xlUp).Rowはその最終行(1048576行)からデータがある行まで上に移動した行数という意味になります。キーボード操作であれば、ワークシートの最終行(1048576行)から「Ctrl+十字キー「↑」」でデータのあるセルに移動する操作です。.Rowなのでそのアクティブセルになる行数という意味になります。因みにセルの2列目の最終行を取得したい場合は、Cells(Rows.Count,2).End(xlUp).Rowです。'変数iに開始値「13」と終了値「1列目の最終行の行番号」を設定します。'変数iが式に入ります。Nextスポンサーリンクまとめ今回は繰り返し処理と最終行の取得について紹介しました。Thenステートメントについて、紹介します。関連記事VBA入門マクロVBAのFor文で作るパズル(演習)ForNextステートメンとIfThenステートメントを使ってパズルを作成する方法について紹介しています。Excelダウンロードファイルを使ってブログ記事を読み進めながら一緒に作成することができます。VBA入門マクロVBAのFor文で作るパズル(演習)乱数生成3Rnd関数を使ってランダムな整数を生成して、パズルをバラバラにする処理について紹介しています。Excelダウンロードファイルを使ってブログ記事を読み進めながら一緒に作成することができます。VBA入門10日で習得!VBA入門1-マクロの記録-マクロVBAを使って同一シート内のデータ処理を自動化するために必要なVBAスキルを習得できます。VBA初学者が読み進めて、添付のレジュメを使って一緒に手を動かしながらVBAコードを記述していくことで、自分のペースでじっくり確実に習得することができます。VBA入門10日で習得!VBA入門5変数の基本マクロVBAの変数と宣言の方法、オブジェクト変数について紹介しています。記事を読み進めていくことで、マクロVBAを使って同一シート内のデータ処理を自動化するために必要なVBAスキルを習得できます。VBA初学者が添付のレジュメを使って一緒に手を動かしながらVBAコードを記述していくことで、自分のペースでじっくり確実に習得することができます。VBA入門マクロVBAのFor文で作るパズル(演習)2ForNextステートメンとIfThenステートメントを使ってパズルを作成する方法について紹介しています。今回はパズルの整列の確認コードです。Excelダウンロードファイルを使ってブログ記事を読み進めながら一緒に作成することができます。VBA入門10日で習得!VBA入門4-メソッド、With構文-VBAの基本なるメソッド、セルやセル範囲の書き方、Withステートメントについて紹介しています。記事を読み進めていくことで、マクロVBAを使って同一シート内のデータ処理を自動化するために必要なVBAスキルを習得できます。VBA初学者が添付のレジュメを使って一緒に手を動かしながらVBAコードを記述していくことで、自分のペースでじっくり確実に習得することができます。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。defined.")}))})();タイトルとURLをコピーしました。