2012-06-28 149 views
4
Dim dtmStart As Date, dtmEnd As Date, dblDuration As Double 
dtmStart = "1900/01/01 08:10:00" 
dtmEnd = "1900/01/03 21:16:00" 
dblDuration = DateDiff("hh:mm", dtmEnd, dtmStart) 
'dblDuration = dtmEnd - dtmStart 
MsgBox Format(dblDuration, "hh:mm") 

我该如何扣除“yyyy/mm/dd hh:mm:ss”格式中的两个日期?我想上面两种方法既不工作VBA减去日期和时间

回答

6
Sub Test() 
    Dim dtmStart As Date, dtmEnd As Date, dblDuration As Double 
    dtmStart = "1900/01/01 08:10:00" 
    dtmEnd = "1900/01/03 21:16:00" 
    dblDuration = dtmEnd - dtmStart 
    MsgBox Application.Text(dblDuration, "[hh]:mm") 
End Sub 
+0

谢谢!几小时左右的方括号就是我所需要的:| – user1384831

+2

+1我很惊讶你没有在评论中填充这个 –

+0

@JFC - 即使评论有限制 –

0

嗯,我是一个简单的丹麦人,我喜欢简单,所以我只是做了这样的:

Dim dtmStart As Date, dtmEnd As Date, dblDuration As Date 

Start: 'STARTTIME 
     dtmStart = Time 

Slut:   
     'SLUTTIDEN 
     dtmEnd = Time 
     dblDuration = dtmEnd - dtmStart 
     Debug.Print "Modul 1 Slut " & Time; " Run = "; dblDuration