セルに入力した時刻をTimeValueに設定する際「型が一致しません」が表示される
ユーザーにマクロ起動時刻をセルに入力してもらいたい場合があります。
例えば、
ユーザーには「11:00:00」と入力をしてもらう→11時00分をマクロ起動時刻としたいが、エラーが発生してしまう。
「型が一致しません」のエラーが表示される原因
セルに時刻を入力すると見た目は時刻のようだが、実際の値は「シリアル値」のため、
型が一致しないためのエラーが発生します。
Public Sub sample()
Cells(1, 1).Value = "11:00:00"
'■Valueを省略しようがしなかろうが、実行時エラー13 型が一致しませんエラー発生
Debug.Print TimeValue(Cells(1, 1))
Debug.Print TimeValue(Cells(1, 1).Value)
'■セルのシリアル値を変換かけて文字列にすることでエラーは発生しなくなる。
Debug.Print Format(Cells(1, 1), "hh:mm:ss")
Debug.Print Format(Cells(1, 1).Value, "hh:mm:ss")
End Sub




コメント