【发布时间】:2014-02-15 21:54:56
【问题描述】:
首先,我使用的是 Excel 2010。
我正在尝试简化从我运行的报告中获取信息的过程,该报告生成以秒为单位的时间。我需要十进制时间而不是小时,到目前为止,这是我能想到的唯一解决方案。示例:
A1 包含以秒为单位的时间。
1843 (seconds)
B1 包含将秒转换为小时的公式
=B1/(1440*60) This gives me 0:30:43
然后我要计算0:30:00还剩下多少时间,这是我需要的。
=IF(B1<$H$1,"ON TIME",SUM(B1-$H$1))
这个公式我把它放在C2中,H1包含时间限制0:30:00,单元格格式为[h]:mm:ss。我用它来计算超出限制的时间。
一旦我的时间超过限制,在本例中为 0:00:43 秒,我必须将其转换为小数,以便从所有这些中得到我真正需要的,为此我使用以下公式。
=C2*60*24
这个公式(放置在 R1 中)给我的结果是 0.72,但我必须复制这个结果并将其粘贴到另一个单元格上,当我这样做并粘贴值时,我得到了这个。 0.71666666666667。即使单元格格式为带 2 位小数的数字。它只影响我在单元格中看到的内容,而不影响单元格中的实际值。
现在,解决这个问题并获得正确的号码。我在 S1 中有另一个公式位置给我正确的数字,在复制并粘贴为值之后,我得到了我需要的实际值。
=TRUNC(R1,2)
这给了我 0.71,如果我复制并粘贴从该公式中获得的内容并将其粘贴为值,我将保留 0.71。
有没有办法通过 VBA 或任何其他公式替代方法来缩短这个过程?
感谢您的帮助。
【问题讨论】: