電子書籍の厳選無料作品が豊富!

VBAでNOW関数は現在の日付と時刻を表す関数だと思いますが、これにt秒を足すという計算をしたのですがNOW+tではうまくいきません。どのようにすれば正しく計算できるのか詳しい方ご教示ください。

A 回答 (2件)

Now()関数をはじめ、日時を扱う場合、シリアル値で扱われます。


シリアル値は、ある特定の日時を基準にして、1日=1.0として取り扱いする数値です。

なので、

> NOW+tではうまくいきません。

これはt日(と0時間0分0秒)足してるので、日付は変わってますが時刻の見た目は変わりません。

NOW + t / 24 / 60 / 60

とすると、tを1日分の秒数で割り算した値(シリアル値でのt秒分)加算できます。
    • good
    • 0
この回答へのお礼

neKo_deux様
早速のご回答ありがとうございます。
仰る通り、t/24/60/60とするとうまく動作しました。

お礼日時:2017/05/28 12:03

こんばんは!



一例です。

NOW+10秒プラスの場合は
>Now() + TimeSerial(0, 0, 10)

といった感じでOKだと思います。m(_ _)m
    • good
    • 0
この回答へのお礼

tom04様
早速のご回答ありがとうございます。
TimeSerial関数の使い方を初めて知りましたがこの方法でうまく動作しました。

お礼日時:2017/05/28 12:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!