- 日時: 2009/12/27 13:04
- 名前: 花ちゃん
- ***********************************************************************************
* カテゴリー:[日付・時刻][][] * * キーワード:時間計算,日時計算,時刻計算,演算,四則計算, * ***********************************************************************************
元質問:日時の計算について - 少林子 2004/01/27-15:49 No.7662
DateAddやDateDiffで日付の計算は出来ますが、日時での計算がうまく出来ません。 たとえば、2004/01/05 10:00:00 から 2004/01/13 16:30:10 までは、何日何時何分何秒なのか知りたいのです。
---------------------------------------------------------------------------- Re: 日時の計算について - ak 2004/01/27-16:38 No.7668 ----------------------------------------------------------------------------
サンプル記述しておきます。
Public Sub Test() Dim lVal() As Long Call DateDiffEx("2004/01/13 16:30:10", "2004/01/05 10:00:00", lVal) '配列番号 0:符号 1:日数 2:時間 3:分 4:秒 MsgBox StrConv(lVal(1) & "日と" & lVal(2) & "時間" & lVal(3) & "分" & _ lVal(4) & "秒" & IIf(lVal(0) = 0, "", " 前"), vbWide) Erase lVal End Sub
Public Sub DateDiffEx(ByVal Date1 As Date, ByVal Date2 As Date, ByRef lVal() As Long) Dim lTmp As Long ReDim lVal(4) lTmp = DateDiff("S", Date1, Date2) '秒数を取得 If lTmp < 0 Then lVal(0) = -1 lTmp = -lTmp End If lVal(1) = lTmp \ 86400 '日数取得 lTmp = lTmp - (86400 * lVal(1)) lVal(2) = lTmp \ 3600 '時間取得 lTmp = lTmp - (3600 * lVal(2)) lVal(3) = lTmp \ 60 '分取得 lVal(4) = lTmp - (60 * lVal(3)) '秒取得 End Sub
|