以excel数字格式显示数字的时间

时间:2013-10-17 09:37:19

标签: excel number-formatting

我目前有一个带有一组日期列的表格,每一行都有一个人名,每个日期下都有一个数字,表示他们在培训中完成的分钟数。即,2013年1月10日的5个示例行可能是30,25,60,45,15。我希望能够在HH:MM:SS中格式化,但保持数据自身相同,以便进行适当的计算可以对数据进行处理。

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

2 个答案:

答案 0 :(得分:2)

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

因此,要将数字“45”(表示分钟)转换为Excel时间,您可以使用=45/60/24并格式化为时间,例如“MM:SS”。 (第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”;有点假,但......;)

答案 1 :(得分:0)

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

假设您的Excel工作表看起来像这样

enter image description here

现在在工作表中的任何空白单元格中输入60。出于演示目的,我将在上述范围之下进行...比如Cell A4

enter image description here

接下来复制您的单元格A4 (cell which has 60),然后右键点击A1:E2范围,然后点击Paste Special。接下来选择Values下的PasteDivide下的Operation

enter image description here

你会得到这个。

enter image description here

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

enter image description here

你会得到这个

enter image description here

现在只需将您的范围A1:E2自定义格式为[hh]:mm:ss即可获得结果

enter image description here