以excel数字格式显示时间

我现在有一张带有一组date列的表格,每行都有一个人名,在每个date下,一个数字代表他们在训练中已经完成的分钟数。 即1/10/2013的5个示例行可能是30,25,60,45,15。我希望能够在HH:MM:SS范围内进行格式化,但保持数据自身相同,以便进行适当的计算可以在数据上完成。

  1. 这可能使用Excel数字格式?
  2. 如果没有,这是可能的使用除VBA以外的任何东西?
  3. 如果只能使用VBA,是否可以将HH:MM:SS仅转换回公式。

在Excel中,时间存储为数字,1天(= 24小时)表示数字“1”,即小时和分钟是“1”的分数。

因此,将数字“45”(表示分钟)转换为Excel时,您将使用=45/60/24并且格式化为时间,例如“mm:ss”。 (build议您的第2和第3点的答案)

您可以使用如此转换的时间进行计算,就像您的原稿一样。 如果您添加时间并期望结果> 00:59:59分钟或> 23:59:59小时,请使用“[hh]:mm:ss”或“[mm]:ss”自定义格式string。

最简单的方法是直接在单元格中input“0:45”作为时间input“45”。

要获得一分钟的时间,你可以使用=MINUTE(<datetime>) …结果是0..59 …所以超过60分钟你还需要做=HOUR(<datetime>)

编辑:如果你只是热衷于显示 “45”为“45:00”,使用自定义格式00“:00” (意思是显示2个数字后面跟着常量string“:00”…这将显示数值2作为“02:00”,数值45作为“45:00”;有点假,但…;)

这是一个非常有趣的做法。 此方法不涉及VBAFormulas

比方说,你的Excel表单看起来像这样

在这里输入图像说明

现在在工作表的任何空白单元格中input60 。 为了演示的目的,我会在低于上述范围内做…在单元格A4

在这里输入图像说明

接下来复制你的单元格A4 (cell which has 60) ,然后右键单击范围A1:E2并单击Paste Special 。 接下来在Operation下selectPasteDivide下的Values

在这里输入图像说明

你会得到这个。

在这里输入图像说明

现在将单元格A4的值更改为24然后重复上述过程。

在这里输入图像说明

你会得到这个

在这里输入图像说明

现在简单地将您的范围A1:E2自定义为[hh]:mm:ss ,您将得到您的结果

在这里输入图像说明