将数字转换为hh:mm时间格式

我需要转换这种types的许多值:

855 1148 1030 1132 1136 1142 1217 1216 837 1044 

转换成这样的时间值:

 08:55 11:48 10:30 11:32 11:36 11:42 12:17 12:16 08:37 10:44 

最终目标是从这个列表中计算出平均时间

假设你的值在单元格A1:A10 ,你可以input公式:

 =TIME(FLOOR(A1/100,1),MOD(A1,100),0) 

进入单元格B1并复制下来。

说明:

TIME()函数有三个参数 – 小时数,分钟数和秒数。

通过取FLOOR(A1/100,1)我们得到( FLOOR(A1/100,1)数值的一小部分。 通过MOD(A1,100)我们得到的余数除以100,这给我们的分钟。

一旦你完成了这个,你可以简单地使用AVERAGE()函数来查找平均值。

要做到这一点没有TIME (只是为了好玩),这也是可能的

 =TRUNC(A1/100)/24+RIGHT(A1,2)/1440 

或直接获取文字:

 =LEFT(A1,LEN(A1)-2)&":"&RIGHT(A1,2) 

或作为一个子(只需select要转换的单元格运行它):

 Sub test() Dim x For Each x In Selection.Cells x.Value = Int(x / 100) / 24 + (x Mod 100) / 1440 x.NumberFormat = "hh:mm" Next End Sub 

试试看,请记住按照时间格式化B列,

 =TIMEVALUE(TEXT(A1,"0\:00")) 

在这里输入图像说明

您可以在B列中的平均值