我目前有一个表,其中包含一组日期列,然后每一行都有一个人名,在每个日期下,一个数字表示他们在培训中完成的分钟数。即 2013 年 1 月 10 日的 5 个示例行可能是 30、25、60、45、15。我希望能够在 HH:MM:SS 内对其进行格式化,但保持数据自身相同,以便进行适当的计算可以对数据进行。
- 这可以使用excel数字格式吗?
- 如果没有,这是否可以使用 VBA 以外的任何东西?
- 如果这只能使用 VBA,是否可以仅在公式中将 HH:MM:SS 转换回 MM。
我目前有一个表,其中包含一组日期列,然后每一行都有一个人名,在每个日期下,一个数字表示他们在培训中完成的分钟数。即 2013 年 1 月 10 日的 5 个示例行可能是 30、25、60、45、15。我希望能够在 HH:MM:SS 内对其进行格式化,但保持数据自身相同,以便进行适当的计算可以对数据进行。
在 Excel 中,时间以数字形式存储,1 天(=24 小时)代表数字“1”,即小时和分钟是“1”的分数;
因此,要将数字“45”(表示分钟)转换为 Excel 时间,您可以使用=45/60/24
并格式化为时间,例如“mm:ss”。(建议您的 pt 2 和 3 的答案)
您可以以与原始时间相同的方式使用如此转换的时间进行计算。如果您添加时间并期望结果 > 00:59:59 分钟或 > 23:59:59 小时,请使用“[hh]:mm:ss”或“[mm]:ss”自定义格式字符串。
最简单的方法是通过在单元格中输入“0:45”直接输入“45”作为时间。
要退出几分钟的时间,您可以使用=MINUTE(<datetime>)
...结果是 0..59 ...所以超过 60 分钟您还需要这样做=HOUR(<datetime>)
。
编辑: 如果您只热衷于将“45”显示为“45:00”,请使用自定义格式00":00"(意味着显示 2 个数字数字后跟常量字符串“:00”......这将显示数值 2作为“02:00”,数值45作为“45:00”;有点假,但是......;)
这是一种非常有趣的方法。此方法不涉及VBA
或Formulas
假设您的 Excel 工作表如下所示
现在输入60
工作表中的任何空白单元格。出于演示目的,我将在上述范围以下进行...在 Cell 中说A4
接下来复制您的单元格A4 (cell which has 60)
,然后右键单击范围A1:E2
并单击Paste Special
。接下来选择Values
underPaste
和Divide
underOperation
你会得到这个。
现在将单元格中的值更改A4
为24
并重复上述过程。
你会得到这个
现在只需自定义格式你的范围A1:E2
,[hh]:mm:ss
你会得到你的结果