本日の記事では、VBA の Range プロパティを使ってセルの値を取得したり、またその逆にセルに値を入力するする方法について学びます。
【VBA】Value プロパティ
ワークシートのセルB2 に「こばとちゃんは今日も元気です!」という文字列が入力されているとします。このデータを取得してメッセージボックスに表示するコードを書いてみましょう。
'[VBA] セルB2の値を表示するプロシージャ(1) Sub GetValueRange_1() MsgBox Range("B2").Value End Sub 'GetValueRange_1の実行結果: 'こばとちゃんは今日も元気です!
GetValueRange_1() を実行すると「こばとちゃんは今日も元気です!」というメッセージが表示されます。
Value は Range オブジェクトの値を取得するプロパティなんだけど、これは省略してもかまいません。でも、作法としては書いておいたほうがいいかもしれませんね。ちなみに Range の代わりに Cells を使って次のように記述しても同じです。
'[VBA] セルB2の値を表示するプロシージャ(2) Sub GetValueRange_1() MsgBox Cells(2, 2).Value End Sub
ちなみに、Range はセル範囲を扱えますが、Cells は単体セルのみです。
今度はセルB2 に「こばとは九姉妹の末っ子です」というデータを入力してみます。
'[VBA] セルB2に値を入力するプロシージャ Sub OutValueRange() '文字列型変数 mystr を宣言 Dim mystr As String mystr = "こばとは九姉妹の末っ子です" Range("B2").Value = mystr End Sub
OutValueRange() を実行するとセルB2 にデータが書き込まれます。
コメント