構文
Object.Value2
Valueプロパティはセルの入力値を取得しますが、
Value2プロパティはセルのシリアル値を取得します。
Value2と2がついているから上位のプロパティという訳でなく、使用用途が異なります。
Value2プロパティのコードサンプル
Public Sub test() '■セルA1に"=TODAY"と数式が入力されている場合 Debug.Print Range("A1").Value '2021/03/14 Debug.Print Range("A1").Value2 '44268 '■セルA1に"=Now()"と数式が入力されている場合 Debug.Print Range("A1").Value '2021/03/14 19:55:24 Debug.Print Range("A1").Value2 '44268.8301361111 '■セルA1に"あいうえお"と値が入力されている場合 Debug.Print Range("A1").Value 'あいうえお Debug.Print Range("A1").Value2 'あいうえお '■セルA1に""と何も入力されていない場合 Debug.Print Range("A1").Value '""(空白) Debug.Print Range("A1").Value2 '""(空白) End Sub
注意点
関連記事
セルに値を入力する【Valueプロパティ】【ExcelVBA】
【VBA基本】変数のデータ型一覧
【VBA基本】セルやセル範囲の値を消去する
RangeとCellの使いわけ【VBA基本】
コメント