0

可能重复:
VBA Excel:一次加一秒

我有一个 Excel 电子表格,其时间值格式为自定义 00"00"。我想从这个值中减去 5 分钟,并使用 Excel VBA 将答案格式化为 hh:mm:ss。我已经看遍了,但没有找到答案。我尝试使用各种时间函数,但运气不佳。我是一个新的 Excel VBA 程序员。任何建议,将不胜感激。

4

2 回答 2

2

如果 Cell 拥有一个真实的日期时间值,你可以使用这样的东西:

Cells(r, c).Value = DateAdd("n", -5, Cells(r, c).Value)
Cells(r, c).NumberFormat = "hh:mm:ss"
于 2013-01-09T21:47:30.830 回答
0

我不知道自定义格式00"00"应该做什么,但既然你说你有“......带有时间值的电子表格......”我假设基础数据是日期/时间序列号。

如果是这样的话

Dim cl as Range
Set cl = Range("YourCellAddress")
cl = cl - 5# / 1440# ' subtract 5 minutes
cl.NumberFormat = "hh:mm:ss" ' format
于 2013-01-09T21:46:28.757 回答