今回はセル範囲を指定するRangeプロパティの使い方を紹介します。実際にプログラムを書いていきましょう。ここでは難しい説明はなしにしますので、とりあえずプログラムを書いて動かすことに慣れてください。
エクセルVBA-セル範囲の指定(Range)
目次
セルの選択
単一セルを選択する
サンプルコード
Sub RangeTest1()
Range("A5").Select
End Sub
Range("A5")はセルA5のことを指します。
Selectは【選択する】を意味します。
つまりセルA5を選択するという操作のコードです。試しにVBEを開いて同じコードを入力し、再生ボタンをクリックして動かしてみましょう。成功すればセルA5が選択されたはずです。
ポイント
Subは一つのプログラムの始まり、EndSubは終わりのこと。
Range("A5").Select=対象指定.命令
対象を指定して命令を出す構文です。対象を変えたり、命令を変えると違う動作になります。
例)Copy・・・対象のセルをコピーする
ClearContents・・・対象のセル内容を消去する(Deleteキーと同じ)
連続セル範囲を選択する
サンプルコード
Sub RangeTest2()
Range("A5:E7").Select
End Sub
Range("A5:E7")はセルA5からセルE7のこと。実行すると下の図のような選択になります。
連続しない複数セル選択
サンプルコード
Sub RangeTest3()
Range("A5,B2,C3,D6,E7").Select
End Sub
Range("A5,B2,C3,D6,E7")はセルA5とB2とC3とD6とE7のこと。実行すると下の図のような選択になります。
列全体の選択
1列全体の選択
サンプルコード
Sub RangeTest4()
Range("A:A").Select
End Sub
Range("A:A")は列A全体のこと。実行すると下の図のような選択になります。
連続する複数列全体の選択
サンプルコード
Sub RangeTest5()
Range("A:C").Select
End Sub
Range("A:C")は列Aから列Cまで全体のこと。実行すると下の図のような選択になります。
連続しない複数列全体の選択
サンプルコード
Sub RangeTest6()
Range("A:A,C:C").Select
End Sub
Range("A:A,C:C")は列Aと列Cの全体のこと。実行すると下の図のような選択になります。
行全体の選択
1行全体の選択
サンプルコード
Sub RangeTest7()
Range("1:1").Select
End Sub
Range("1:1")は行1全体のこと。実行すると下の図のような選択になります。
連続する複数行全体の選択
サンプルコード
Sub RangeTest8()
Range("1:5").Select
End Sub
Range("1:5")は行1から行5まで全体のこと。実行すると下の図のような選択になります。
連続しない複数行全体の選択
サンプルコード
Sub RangeTest9()
Range("1:1,3:3,5:5").Select
End Sub
Range("1:1,3:3,5:5")は行1と行3と行5の全体のこと。実行すると下の図のような選択になります。
名前の定義の範囲を選択
サンプルコード
Sub RangeTest10()
Range("定義した名前").Select
End Sub
"定義した名前"には【名前の定義】を使って作った名前を入れる。例えば【国語】という名前を定義していたら、Range("国語").Selectと入力する。【名前の定義】の詳細についてはこちらをクリックして参照ください。
まとめ
今回はセルの指定方法について紹介しました。エクセルの基本はセルなので、それを指定するのはVBAを作っていく上で非常に重要な基礎となるもので、これができなければはっきり言って何もできません。覚えるまで何度でも自分でコードを書いて実行してみてください。
新着記事