Excel VBAで演算などをした結果をセルに出力したり、セルの値を取得して演算したりという操作はかなりの頻度で使うのではないでしょうか。
今回は、Valueプロパティを使ってセルに値を入力する方法、セルの値を取得する方法についてご紹介します。
- 指定したセルに値を入力する
- 指定したセルの値を取得する
セルに値を入力する方法
セルに値を入力する方法は、2通りあります。
- 「Range」を使う
- 「Cells」を使う
Rangeを使う場合
以下のように記載します。
Range(“セル位置”)
実際にコードを入力して確認していきましょう。
Sub test()
Range("A1").Value = "文字列" 'Cells(1, 1)に「文字列」を入力
Range("B1").Value = 123 'Cells(1, 2)に「123」を入力
Range("C1").Value = Now 'Cells(1, 3)に現在の時刻を入力
End Sub
Cellsを使う場合
以下のように記載します。
Cells(行数, 列数)
実際にコードを入力して確認していきましょう。
Sub test()
Cells(1, 1).Value = "文字列" 'Cells(1, 1)に「文字列」を入力
Cells(1, 2).Value = 123 'Cells(1, 2)に「123」を入力
Cells(1, 3).Value = Now 'Cells(1, 3)に現在の時刻を入力
End Sub
参考
Range.Cells プロパティ (Excel)Microsoft
セルの値を取得する方法
セルの値を取得する方法は、セルに値を入力する方法と同様に2通りの方法があります。
- 「Range」を使う
- 「Cells」を使う
今回は、セルの値を取得しメッセージボックスに出力する方法をご紹介します。
Rangeを使う場合
以下のように記載します。
Range(“セル位置”)
実際にコードを入力して確認していきましょう。
Sub test()
MsgBox Range("A1").Value 'Cells(1, 1)の値がメッセージボックスに表示される
MsgBox Range("B1").Value 'Cells(1, 2)の値が「123」がメッセージボックスに表示される
MsgBox Range("C1").Value 'Cells(1, 3)の値がメッセージボックスに表示される
End Sub
MsgBoxの使い方は、以下をご参照ください。
Excel VBA MsgBoxの使い方(基礎〜応用まで徹底解説)
Cellsを使う場合
以下のように記載します。
Cells(行数, 列数)
実際にコードを入力して確認していきましょう。
Sub test()
MsgBox Cells(1, 1).Value 'Cells(1, 1)の値がメッセージボックスに表示される
MsgBox Cells(1, 2).Value 'Cells(1, 2)の値が「123」がメッセージボックスに表示される
MsgBox Cells(1, 3).Value 'Cells(1, 3)の値がメッセージボックスに表示される
End Sub
参考
Range.Cells プロパティ (Excel)Microsoft
RangeとCellsの使い分け
ここまでコードを見てきて、RangeとCellsってどう使い分けたらいいのと思った方がいらっしゃるのではないでしょうか?
簡単に言うと・・・
変数を使わない:Range
変数を使う:Cells
正直あまり難しいことを考えてもしょうがないので、これだけ覚えておけば大丈夫です。
詳しく知りたいという方は、以下のサイトがおすすめです。
まとめ
今回は、以下の2つについてご紹介しました。
- 指定したセルに値を入力する
- 指定したセルの値を取得する
→Range、Cellsのいずれかの方法を使う
→Range、Cellsのいずれかの方法を使う