投稿日 | : 2004/06/21(Mon) 22:13 |
投稿者 | : 花ちゃん |
Eメール | : |
URL | : |
タイトル | : Re^2: 時間の計算ついて |
VBの日付型は西暦 100 年 1 月 1 日〜西暦 9999 年 12 月 31 日の
範囲の日付と、0:00:00 〜 23:59:59 の範囲の時刻を表します。
従って、日付型に変換すると, -23:00 という時刻はありえないので、23:00 に
なってしまうと思います。
下記を試して見て下さい。日付型に変換しなければ、マイナスの値が返ってきます。
DateDiff() 関数で時間差を求めた場合もマイナス値で返ってきます。
Private Sub Command1_Click()
Debug.Print (CDate("00:15") - CDate("23:00"))
Debug.Print Format((CDate("00:15") - CDate("23:00")), "hh:mm")
Debug.Print ((CDate("00:15") - CDate("23:00")) * 1440) \ 60
Debug.Print ((CDate("00:15") - CDate("23:00")) * 1440) Mod 60
Debug.Print DateDiff("h", CDate("23:00"), CDate("00:15"))
Debug.Print DateDiff("n", CDate("23:00"), CDate("00:15")) Mod 60
End Sub