セル番地・行番号・列番号でセルを取得する方法【VBA入門】

VBA(Visual Basic for Applications)では、セルの操作が頻繁に行われます。その際、**セル番地(例:A1)**や、**行・列番号(例:1行6列)**を使ってセルを取得する方法を知っておくと非常に便利です。

この記事では、代表的なセルの取得方法を丁寧に解説いたします。


セル番地でセルを指定する方法

ExcelのセルをVBAで指定する最も基本的な方法は、「Range」を使う方法です。

Range("A1").Value = "セルA1"

このコードは、セルA1に「セルA1」という文字列を入力するという意味になります。


範囲をセル番地で指定する

複数のセルをまとめて指定したい場合も、Rangeを使って範囲を指定できます。

Range("A3:B5").Value = "セルA3:B5"

このコードでは、A3からB5までの範囲(合計6セル)に「セルA3:B5」という値を一括で入力しています。


開始セルと終了セルで範囲を指定する

以下のように、開始セルと終了セルをRangeで囲むことで範囲指定する方法もあります。

Range(Range("C1"), Range("D10")).Value = "C1からD10"

この書き方は、動的に開始位置・終了位置が決まる場面で便利です。たとえば、ユーザーの選択したセル範囲をもとに処理する場合などに活用されます。


行番号・列番号でセルを指定する(Cells)

VBAでは、行番号・列番号を使ってセルを指定する方法として、Cellsプロパティが用意されています。

Cells(1, 6).Value = "1行・6列"

この例では、1行目・6列目(つまりセルF1)に「1行・6列」と入力しています。

列を文字でなく、数字で指定できるため、ループ処理との相性が良く、非常に実用的です。


列を列記号で指定する方法

Cellsでは、列を英字(列記号)で指定することも可能です。ただし、英字で指定する場合には"F"のように文字列として扱います。

Cells(3, "F").Value = "3行・F列"

この例では、3行目・列Fに「3行・F列」という値を設定しています。列を明確に指定したいときや、読みやすさを優先する場合に便利です。


目次

まとめ

セルの指定には大きく分けて次の方法があります。

方法使用例説明
Range("A1")特定のセルを直接指定
Range("A3:B5")範囲を明示的に指定
Range(Range("C1"), Range("D10"))開始・終了セルを別々に指定
Cells(1, 6)行番号・列番号で指定(列は数値)
Cells(3, "F")行番号・列記号で指定(列は英字)

VBAでセルを扱う際には、状況に応じてこれらの書き方を使い分けることで、より柔軟かつ効率的なコードを書くことができます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次