• ベストアンサー

excel 日付で、0時が読み出せない

エクセルのセルにyyyy/mm/dd hh:mm:ssの形式で日付と時間を入れている。これを エクセルVBAで Dim W as String W=Cells() で読み出したとき、0時の場合、Wには時間以降が無くなっている。 日付のフォーマットはこのままで、0時の時も0:00:00の部分が読み出せないでしょうか。 なお、Cells().Valueとしても同じです。 また、日付以外のデータも読み込む可能性が有ります。

質問者が選んだベストアンサー

  • ベストアンサー
  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

> 日付のフォーマットはこのままで、0時の時も0:00:00の部分が読み出せないでしょうか。 その通りなので、常に時刻部分が必要であるならformat関数で明示的に整形してあげればよいかと。 > 日付以外のデータも読み込む可能性が有ります。 IsDate()で日付データかをチェックすればよいかと。

yharapan
質問者

お礼

ありがとうございました。IsDate()を知らなくて、:記号が有ることを日付であるかどうかの判断に使っていて、質問の現象に気がつきました。だから、強制的に:を付けさせることに気がつきませんでした。VBAには色々便利な機能があるんですね。さらにformatも日付を加工できることを今回初めて知りました。

関連するQ&A