セルの値を取得、設定、Value
タイトルのマクロは、以下です。
' セルの値を取得、設定、Value
Private Sub Range_Value()
Dim v As Variant
With Sheet1
' セルB3の値を変数vに代入する
v = .Range("B3").Value
' 変数vの値をデバッグウィンドウに出力する
Debug.Print v
' セルB7に変数vの値を設定する
.Range("B7").Value = v
' セル範囲B2からD5の値を配列vに代入する
v = .Range("B2:D5").Value
' コードの実行を停止し、デバッグモードに移行する
Stop
' 配列vの値をセル範囲F2からvの行数と列数に合わせて設定する
.Range("F2").Resize(UBound(v), UBound(v, 2)).Value = v
' 設定する範囲が小さい場合
.Range("F7").Resize(2, 2).Value = v
' 設定する範囲が大きい場合
.Range("F10").Resize(5, 4).Value = v
End With
End Sub
コードの説明
- サブルーチンの宣言:
- このサブルーチンは、セルの値を取得および設定する操作を行います。
- シートへの参照:
Sheet1
を対象とした操作をWith
ステートメント内で行います。
- 単一セルの値の取得と設定:
- セル
B3
の値を変数v
に代入し、その値をデバッグウィンドウに出力します。 - その後、セル
B7
に変数v
の値を設定します。
- セル
- セル範囲の値を配列に取得:
- セル範囲
B2:D5
の値を配列v
に代入します。 Stop
ステートメントにより、コードの実行が一時停止し、デバッグモードに移行します。
- セル範囲
- 配列の値を別の範囲に設定:
- 配列
v
の値をセル範囲F2
から、配列v
の行数と列数に合わせて設定します。 Resize
メソッドを使用して、範囲のサイズを配列v
の行数と列数に調整します。
- 配列
- 設定する範囲のサイズが異なる場合の操作:
- 配列
v
の値をセル範囲F7
に設定する場合、範囲のサイズを2行2列
に調整します。 - 配列
v
の値をセル範囲F10
に設定する場合、範囲のサイズを5行4列
に調整します。
- 配列
補足説明
.Value
プロパティ:Value
プロパティは、セルまたはセル範囲の値を取得または設定するために使用されます。- 配列を使用してセル範囲の値を一度に取得および設定することができます。
.Offset
メソッド:Offset
メソッドは、指定されたセル範囲を基準に、特定の行数と列数だけずらした新しい範囲を参照します。
.Resize
メソッド:Resize
メソッドは、セル範囲の行数と列数を指定して、範囲のサイズを変更します。
Stop
ステートメント:Stop
ステートメントは、コードの実行を一時停止し、デバッグモードに移行します。デバッグモードでは、変数の値やステートメントの実行をステップ実行することができます。
このコードを実行すると、指定したセルの値の取得および設定、範囲のリサイズなどの操作を行い、各ステップでの結果をデバッグウィンドウに出力します。