Excel VBAを使ってシート上のセルを操作する場合、セルの位置をA1形式で指定することができます。A1形式は列のアルファベットと行番号を組み合わせて表現されます。例えば、A1セルは列Aの1行目、B2セルは列Bの2行目を表します。
A1形式の使い方
セルの値を取得する場合は、以下のようにRangeオブジェクトの引数としてA1形式で指定します。
1 2 |
Dim cellValue As Variant cellValue = Range("A1").Value |
セルの値を変更する場合も同様にA1形式で指定します。
1 |
Range("A1").Value = "新しい値" |
範囲を指定する場合は、始点と終点のセルをA1形式で指定して、”:”でつなぎます。
1 |
Range("A1:B2").Value = "範囲に新しい値" |
また、複数の範囲を指定する場合は、”,”で区切って指定します。
1 |
Range("A1:B2,C3:D4").Value = "範囲に新しい値" |
注意点
A1形式でセルを指定する際には、以下の点に注意する必要があります。
- セルが存在しない場合はエラーが発生するため、セルが存在するかどうかを確認する必要があります。
1 2 3 |
If Not Range("A1") Is Nothing Then ' セルが存在する場合の処理 End If |
- シート名を指定することもできますが、シート名にスペースが含まれる場合は、シングルクォーテーションで囲む必要があります。
1 |
Range("'Sheet Name'!A1").Value = "値" |
- 複数のワークブックを操作する場合は、ワークブック名を指定する必要があります。
1 |
Workbooks("Book1.xlsx").Worksheets("Sheet1").Range("A1").Value = "値" |
コメント