ねこになりたい

おふとんと朝の別れをするのが辛い人向けです。正論で殴らず見守ってあげてください。

Rangeオブジェクト

 

概要

 
Range(セル番地)
Rangeレンジとは、「範囲」という意味。
シートの指定した範囲を参照できる。

例えば、下のように文字列が入ってる場合は、Range("B3")と指定する。

f:id:Arpino:20200322162408p:plain

セルを範囲指定する場合は、開始位置と終了位置を:で繋ぐ。

Range(開始位置 : 終了位置)

プロパティ

どの形式で取得するかを選べる。
Valueは「値」の意味なので、そのまま値を取得・設定する。
Addressは「住所」なので一意。セル番地を絶対参照で返す。
Rowは「列」。シートのA, B, Cのことだが、番号で指定する。
Columnは「行」。シートの行番号(1,2,3,4~)を指定する。

プロパティ名 説明
Value Range("B3").Value 指定されたセルの値を取得する。

f:id:Arpino:20200322170634p:plain

Value Range("A1").Value = "にゃー" 指定されたセルの値を設定する。
Address MsgBox Range("C2").Address C2セルを絶対参照でメッセージ表示する。

f:id:Arpino:20200322172839p:plain

Row MsgBox Range("C2").Row C2セルの列番号をメッセージ表示する。

f:id:Arpino:20200322173031p:plain

Column MsgBox Range("C2").Column C2セルの行番号をメッセージ表示する。

f:id:Arpino:20200322173317p:plain

サンプル

Sub ChangeValue() 
Range("B3").Value = "にゃーにゃー" 'B3セルの値を変更する
End Sub

実行結果

処理実行後、B3セルが猫になる。
かわええのう。

f:id:Arpino:20200322193659p:plain

補足

RangeとCellを組み合わせることもできる。
ただし、この方法だと値が移動した場合に都度都度修正が必要になる。

Range (Cells(1,1), Cells(3,2))

そこで、セルに名前を定義することで値が移動しても柔軟に対応できる。

f:id:Arpino:20200322230415p:plain

Range ("猫")

落とし穴

参照するセルの行と列が正しく指定されていないか、セルを""で囲まないとエラーが出る。

Range("1").Value = "にゃー"
Range(A1).Value = "にゃー"

f:id:Arpino:20200322211231p:plain

Range("A1").Value = "にゃー"