以 H:MM 形式显示分钟

以 H:MM 形式显示分钟

我有一列整数,代表分钟数(不是一天中的实际时间,因为它可以存储大于 24 小时的值和负值),我想添加第二列以将它们显示为小时和分钟,例如:

   A     B
---- -----
   5  0:05
  30  0:30
  60  1:00
  90  1:30
1440 24:00
1800 30:00
 -45 -0:45

我已经很接近了:

  1. 将 B 列设置为=A1/(24*60)
  2. 应用[h]:mm;@自定义格式。

但负值显示为#########

我遗漏了什么?

答案1

假设您的数据在 J8 中,您可以使用以下公式。它会将时间转换为字符串,并检查其是否为负数,并在负时间前面添加 -。不幸的是,为了在将来处理它,您需要将字符串转换回时间并处理带负号的问题。

=IF(J8<0,"-","")&TEXT(ABS(J8)/60/24,"[H]:MM")

调整单元格引用以满足您的需要。

波克

答案2

为了完整起见,以下是我原来方法和转发 Ed 的回答允许积极的值保持为数字(负数仍然是文本,因此默默从计算中丢弃):

  • 公式:

    =IF(A1<0, "-" &TEXT(ABS(A1)/60/24, "[H]:MM"), A1/60/24)
    
  • 单元格样式:

    [h]:mm;@
    

截屏

相关内容