セルをRangeプロパティやCellsプロパティで指定するとき、Vlueプロパティは省略することが多いです。

スポンサーリンク

Valueプロパティを省略できるとき

Rangeオブジェクトでは、プロパティを省略することができます。
Rangeオブジェクトでプロパティを省略すると、Valueプロパティが指定されたものとみなされます。

Range("C2").Value="マクロ"
Cells(3,3).Value=20
.Valueを付けた書き方。

Range("C2")="マクロ"
Cells(3,3)=20
.Valueを省略した書き方。

スポンサーリンク

Valueプロパティを省略できないとき

サンプルコード
 コード内、Wクリックでコピーできます。
Sub サンプル2010()

  Sheets(1).Range("A11:B15").Value = Sheets(1).Range("A1:B5").Value
  Sheets(1).Range("A11:B15") = Sheets(1).Range("A1:B5").Value

End Sub

●省略できないときの例

Sheets(1).Range("A11:B15").Value = Sheets(1).Range("A1:B5").Value

右辺のセルA1からセルB5の値が、左辺のセルA11からセルB15へ代入されます。

Sheets(1).Range("A11:B15") = Sheets(1).Range("A1:B5").Value

左辺にあるValueは、省略することができます。
右辺のValueは省略できません。
右辺のValueプロパティは、セルA1からセルB5の値を取得するという意味なので、これを省略するとセルの値を取得できないことになります。

●マクロの実行結果

Sheets(1).Range("A11:B15").Value = Sheets(1).Range("A1:B5").Value
Sheets(1).Range("A11:B15") = Sheets(1).Range("A1:B5").Value

どちらのコードも同じ結果になります。

以上で「Valueプロパティの省略」の説明を終わります。




おすすめの記事