セルの選択【Excel VBA】
目的:任意のセルをコントロールできるようになる
要件:VB Editorを起動することができる
結果:セル選択マスターになる
マクロ/VBAを使いこなすにはまずは、セルの指定/選択方法をマスターする必要があります。
セルの指定
セルの指定
には2種類の方法があります。
Range関数とCells関数です。
Excelは行・列の2軸の表になっています。
デフォルトでは、
- 行は縦軸・・・数字
- 列は横軸・・・アルファベット
になりますが、
1行目、1列目は、A1セルと呼ばれます。(列行のナンバリングです)
その列行のナンバリングを直接参照する時に、使用されるのが、Range関数です。
例えば、Range(”A1”)と記載するとA1セルを示します。
また、座標で参照する場合に使用するのが、Cells関数です。
Cells関数で、Cells(1,1)と記載すると、A1セルを示します。
即ち、Range(”A1”)=Cells(1,1)となります。
では、何が違うのかというと、範囲指定の可否となります。
- Range関数・・・範囲指定可
- Cells関数・・・範囲指定不可
となりますが、適宜使い分けが必要なケースが出てきますが、ここではこれくらいの認識で結構です。
範囲指定の方法
Range関数であれば範囲指定が可能です。
Range(”A1”,”D3”)と指定すれば、A1セルからD3セルまでの12マス分選択することになります。
ここで少し応用でRange関数とCells関数の組み合わせで可能となります。
例えば、Range(Cells(1,1),Cells(3,4))とすれば同じ範囲を示します。
Range指定
Cell指定
列/行の選択指定
同じ選択にも列単位で選択、行単位で選択する場合があります。
これも関数が存在します。
- Row関数・・・Row(1) 1列目を示す
- Column関数・・・Column(1) 1行のを示す
処理の指示
上記で指定する方法を説明しました。
指定するだけでは、なにもできないのですが、指定したセルに対して、選択する、コピーする・・・
色々できます。
その方法は、各種関数の後ろに、メソッドと呼ばれる処理を追加します。
例えば、
- Range(”A1”).Select・・・A1セルを選択
- Range(”A1”).Delete・・・A1セルを削除
などがあります。
上記はRange関数ですが、Cells関数、Row関数、Column関数共通です。
以上が、理解してもらえれば、これであなたもセル選択マスターです。
クリア!→【結果:セル選択マスターになる】