VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 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


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -