Excel VBA Valueプロパティを省略できない場合

Excel VBAでRngeやCellsを扱うとき、Valueプロパティは省略できるという記述をよく見かけます。

ところが、Valueを省略すると、エラーこそでないものの、意図した実行結果にならないことがあります。

セル範囲の値を別のセル範囲に代入するような場合、省略できないことは有名です。

<例>Range(“A1:B1”).Value = Range (“A2:B2”).Valu

この場合はValueを省略できません。

今回は、日付が文字列で入力されているセルの値に、日付の表示形式をつけ、隣のセルに代入する、というコードを書いたところ、

上記の例では、正しく日付の表示形式が設定されA2の値がB2に表示されました。

ところが、コード2行目のValueを省略すると、

日付のフォーマットは反映されません。

Valueは省略できない場合もある、ということです。

初心者の場合は、やみくもに省略せず、きちんと記述した方がよさそうですね。

タイトルとURLをコピーしました