【Excel VBA】セルの値取得
- 2020.08.05
- Excel VBA
![【Excel VBA】セルの値取得](https://blog.teto-sol.com/wp-content/uploads/2020/08/17ff5aa9b51ba231a1931a8b7b199a7a-890x500.png)
Excel VBAでセルの値を取得するというのは基本中の基本です。
今回はRangeオブジェクトとCellsオブジェクトでセルの値を取得するための方法を紹介します。
1つのセルの値を取得する方法(Range編)
セルの値を取得する方法にRangeオブジェクトを使用する方法があります。
まずはサンプルプログラムとその結果を見てみましょう。
Sub Sample01()
MsgBox Range("B3").Value
End Sub
「MsgBox」はエクセル上でダイアログを表示するためのおまじないみたいなものなので、今回は気にしないでください。
ここで特筆すべきは「Range(“B3”)」の記述です。
RangeはA1形式でセルを指定すると、そのセルを参照します。
今回は「B3」という文字列で指定しているので、B3セルを参照しています。
また、Rangeオブジェクトの「.Value」のプロパティを使用することで、セルの値を取得することができます。
1つのセルの値を取得する方法(Cells編)
セルの値を取得する方法はRangeオブジェクト以外にもCellsオブジェクトを使用する方法もあります。
これもサンプルプログラムとその実行結果を見てみましょう。
Sub Sample02()
MsgBox Cells(2, 3).Value
End Sub
このポイントは「Cells(2, 3)」の記述です。
Cellsは引数に(行, 列)のようにR1C1形式でセルを指定すると、そのセルを参照します。
今回は「2, 3」という値で指定しているので、2行3列のセル、つまりC2セルを参照しています。
また、Rangeオブジェクト同様に「.Value」のプロパティを使用することで、セルの値を取得することができます。
まとめ
セルの値取得はRangeオブジェクトとCellsオブジェクトのいずれかで行うことができます。
セルの値を取得するには以下の切り分けで考えるといいでしょう。
A1形式 | R1C1形式 |
Range(A1).Value | Cells(R1, C1).Value |
RangeオブジェクトもCellsオブジェクトも変数を使用することが可能ですが、それはまた今度!
では、Excel VBAを使用した自動化ライフを楽しみましょう♪
Excelでの自動化や省力化に関するお問い合わせはこちらからお待ちしております。
LancersやMENTAでも活動していますので、そちらからお仕事を依頼して頂けます。
- 前の記事
記事がありません
- 次の記事
【Excel VBA】セルへの値設定 2020.08.06