【问题标题】:Switching a decimal higher than 24 into [hh]:mm:ss format?将大于 24 的小数转换为 [hh]:mm:ss 格式?
【发布时间】:2023-03-19 01:20:01
【问题描述】:

我有一个大于 24 的整数,我想将它转换为日期格式。我只能得到一个不匹配错误。

Dim ready_time() as Date

Dim time_calculator as Integer

这里我有代码可以增加 time_calculator

ready_time(i) = Format((time_calculator / 24), "[hh]:mm:ss")

如果 time_calculator = 36,我想要 36:00:00。这个值后面会用到,所以我不使用TEXT/String函数很重要。

感谢您的帮助,我正在尝试解决这个问题 5 个小时!

【问题讨论】:

  • 只需将其作为 (time_calculator / 24) 放入,然后在拉出时对其进行格式化,无论是使用 Range.NumberFormat 的代码还是使用自定义格式在工作表上。
  • 你好@ScottCraner。如果我只保留 (time_calculator / 24),是否会影响我未来计算的数据。我必须将我的数据 (ready_time(i)) 与其他整数相乘。我认为 24​​:00:00 以下的一切都会好起来的,但如果是像 1900-01-01 02:00:00 这样的事情,我认为它不会好……我说的对吗?

标签: excel vba date


【解决方案1】:

根据我的cmets:

Sub ttooo()

Dim t() As Double

ReDim t(1 To 2) As Double

t(1) = 36 / 24
t(2) = 23 / 24

Range("A1") = t(1)
Range("A2") = t(2)

Range("A1:A2").NumberFormat = "[hh]:mm:ss"

End Sub

【讨论】:

  • 感谢您的时间/回答!
  • @sexyuser1 我希望它有所帮助。评论太多了。
猜你喜欢
  • 1970-01-01
  • 2018-07-23
  • 1970-01-01
  • 1970-01-01
  • 2022-01-22
  • 2018-11-03
  • 1970-01-01
  • 2013-11-11
  • 2019-12-24
相关资源
最近更新 更多