今天遇到了这样一个问题:如何将“X天X小时X分钟”这种时间数据分别转换为分钟、小时、或者秒呢?
遇到这个问题,想到的第一思路是用添加辅助列,然后进行分列的方法:将“X天X小时X分钟”数据分别根据分隔符号“天”,“小时”,“分钟”进行分列,将得到的天、小时、分钟数据放置到三个单元格里面,然后在进行简单的乘以换算单位进行计算。但是这种方法需要增加辅助列,而且增加新数据后还需要重新分列,所以没有考虑。
有的同学还会想,我直接在目标单元格里面一个一个进行计算,不也挺好吗?但是这种笨拙的方法,在数据量少的情况,可以凑活应付,但是一旦遇到数据量大的时候,就不可取了。
最方便的方法还是用函数,下拉填充公式即可得到所有数据。下面我们就来介绍三个长公式来解决今天的问题。
将“X天X小时X分钟”数据计算分钟
E3单元格输入公式:
=TEXT(LEFT(D3,FIND("天",D3)-1)+SUBSTITUTE(SUBSTITUTE(MID(D3,FIND("天",D3)+1,99),"小",),"钟",),"[m]")
下拉填充公式得到所有结果。
将“X天X小时X分钟”数据计算小时
F3单元格输入公式:
=IF(COUNTIF(D3,"*天*"),LEFT(D3,FIND("天",D3)-1))*24+SUM(RIGHTB(LEFT(D3&0,FIND({"小时","分钟","秒"},D3&"0时0分0秒")-1),2)/60^{0,1,2})
下拉填充公式得到所有结果。
将“X天X小时X分钟”数据计算秒
G3单元格输入公式:
=TEXT(LEFT(D3,FIND("天",D3)-1)+SUBSTITUTE(SUBSTITUTE(MID(D3,FIND("天",D3)+1,99),"小",),"钟",),"[m]")*60
下拉填充公式得到所有结果。