寻求将时间值转换为天数、小时、分钟格式的解决方案
在Google Sheets中将时间值转换为
X days Y hours Z minutes格式 情况1:单元格为时间/日期格式的时长
如果你的时间值是以时间格式存储(比如单元格显示为2d 7h 15m,后台实际是代表天数的数值,例如2.302083),可以使用以下公式(假设目标值在A2,公式放在B2):
=IF(INT(A2)>0, INT(A2)&" days ", "")&IF(HOUR(A2)>0, HOUR(A2)&" hours ", "")&IF(MINUTE(A2)>0, MINUTE(A2)&" minutes", "")
公式逻辑:
INT(A2)提取整数部分,即天数HOUR(A2)提取时间中的小时段MINUTE(A2)提取时间中的分钟段- 通过
IF判断各部分是否大于0,避免输出0 days这类冗余内容
情况2:单元格为总分钟数/总小时数的数值
如果你的时间值是总分钟数(比如1935代表2天7小时15分),使用以下公式:
=IF(FLOOR(A2/1440)>0, FLOOR(A2/1440)&" days ", "")&IF(FLOOR(MOD(A2,1440)/60)>0, FLOOR(MOD(A2,1440)/60)&" hours ", "")&IF(MOD(A2,60)>0, MOD(A2,60)&" minutes", "")
公式逻辑:
1440为一天的分钟数,FLOOR(A2/1440)计算总天数MOD(A2,1440)得到扣除天数后的剩余分钟数,再除以60取整得到小时数MOD(A2,60)得到最终剩余的分钟数
可选优化:处理单数形式
如果需要区分单复数(比如1 day而非1 days),可以修改公式中的对应部分,以天数为例:
INT(A2)&" day"&IF(INT(A2)!=1,"s","")&" "
将原公式中对应替换即可实现更严谨的表述。
内容的提问来源于stack exchange,提问作者HSHO
相关产品推荐
相关产品推荐

