EXCEL VBA DATETIME subtraction



这个问题之前被问过,我试图实现这个解决方案,但我不能让它工作这基本上就是我想要达到的目标要减去日期时间值以获得总小时数,即使它超过一天,那么我想显示的值是36:03,这是格式[h]:mm, tks,下面是我试图实现的VBA代码

 Sub dateissue()
Dim startdate As Date, enddate As Date
Dim doublevar As Double
enddate = "13/2/2014 08:10:00"
startdate = "12/2/2014 18:10:00"
doublevar = enddate - startdate
Range("D3").Value = Format(doublevar, "[h]:mm")

End Sub

我在D3中的结果总是:12

这个对我很有用:

Range("D3").Value = doublevar
Range("D3").NumberFormat = "[h]:mm"

还要确保以正确的格式输入日期(即月/日顺序,系统区域设置可能会对不同机器产生影响)。

或者如果你只想要文本:

Range("D3").Value = "'" & Application.WorksheetFunction.Text(doublevar, "[h]:mm")

相关内容

  • 没有找到相关文章