Excel VBA 基礎学習 第9回
第9回では、VBAの練習として「セルを移動するプログラム」の記述を行います。この回も「模写」を通して、VBAでどのように記述するのかを学習します。
第1章 VBAの練習
【目標】
ワークシートを選択するプログラムを記述して実行できる。(第3回)
アクティブシートを変更するプログラムを記述する。(第4回)
セルを選択するプログラムを記述して実行できる。(第5回)
アクティブセルを変更するプログラムを記述して実行できる。(第6回)
セルに値を代入するプログラムを記述して実行できる。(第7回)
セルの値を取得するプログラムを記述して実行できる。(第8回)
セルを移動するプログラムを記述して実行できる。(第9回)
指定範囲を選択するプログラムを記述して実行できる。(第10回)
処理の選択を行うプログラムを記述して実行できる。(第11回)
処理の反復を行うプログラムを記述して実行できる。(第12回)
セルの色、罫線、フォント、値を扱うプログラムを記述して実行できる。(第13回)
第1節 プロシージャ記述練習の方法と目標
第3回以降で行うVBAの練習は、第1回と第2回で作成した「vba1.xlsm」の標準モジュール「practice_1」に記述を行います。但し、ここでの記述では具体的な文法等には触れず、入力に慣れることを目標に学習を進めます。
第2節 セルを移動するプログラム
VBEを起動して「practice_1」モジュールに「sample7」プロシージャを作成して次のように入力します。
一行目:移動前のセルに「起点」と入力
二行目:セルの移動を行うプログラム(今回の表題のプログラム)
一行目の入力は「Worksheets("Sheet1").Rnage("D10")」に続けて「.」ドット、「Value」、「半角スペース」、「=」、「半角スペース」、「"」ダブルクォーテーション、「起点」、「"」ダブルクォーテーションと入力します。
これにより、一行目ではワークシート「Sheet1」のセル「D10」に値として「起点」を設定(入力)することになります。
二行目は「Worksheets("Sheet1").Rnage("D10")」に続けて「.」ドット、「大文字のO」、「小文字のffset」、「( )」と入力し、( )の中に「1」「,」カンマ「0」と入力し、「)」の後にカーソルを移動して、最後に「.」ドット、「Select」を入力します。
二行目のプログラムではワークシート「Sheet1」のセル「D10」を指定した後、Offsetという設定を利用することで、ひとつ下のセル「D11」に移動することになります。
Offsetでは丸カッコの中を(縦方向に移動する数、横方向に移動する数)と指定することで起点とする座標を原点(0, 0)としてセルを移動できます。
今回のプロシージャではOffset(1, 0)としているので縦方向(下方向)に「1」移動することになります。
※上に移動する場合はマイナスの表現となります。左右の移動は右への移動はプラスの表記、左への移動はマイナスの表記となります。
プロシージャの記述が完了したら、デバッグタグの「VBAProjectのコンパイル」を実行します。
この操作を行うときはカーソルが実行したいプロシージャに入っていることが必要です。
記述内容に文法的なミスがなければコンパイルは完了です。続けて記述したプロシージャの実行を行います。カーソルが実行したいプロシージャに入っていることを確認してください。
実行の操作は下キャプチャの実行ボタンで行います。
実行結果は次の通りワークシート「Sheet1」のセル「D10」を基準にOffset(1, 0)の位置「縦方向でひとつ下」「横方向は移動なし」の個所にセルの選択位置が移動します。
本記事(基礎学習 第9回)の内容は以上です。
ご案内:この記事の執筆者の別サイト
https://howahowablog.com/vba_books_recommendation5/