发布网友 发布时间:2022-04-21 17:46
共4个回答
热心网友 时间:2023-05-04 01:34
基于fan4di|的回答,整合了进位和显示需要
B9里的公式: =CONCATENATE(ROUNDDOWN(((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60/8,0),"天",ROUNDDOWN((((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60/8-(ROUNDDOWN(((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60/8,0)))*8,0),"小时",ROUND(((((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60/8-(ROUNDDOWN(((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60/8,0)))*8-(ROUNDDOWN((((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60/8-(ROUNDDOWN(((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60/8,0)))*8,0)))*60,0),"分钟")
B9显示结果示例: 40天6小时52分钟
B10里公式: =CONCATENATE((ROUND(((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60/8,2)),"天")
B10显示结果示例:48.86天
B11里公式:=CONCATENATE((ROUND(((SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1)))*8*60+(SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1)))*60+(SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))))/60,2)),"小时")
B11显示结果示例:390.87小时追问你太厉害了!!
谢谢你花费时间帮助我!!太感谢啦~~
怎么能这么牛,好想拜你为师
热心网友 时间:2023-05-04 01:35
求天数、小时数、分钟数所用公式如下(未考虑进位):
=SUMPRODUCT(--LEFT(B1:B8,FIND("天",B1:B8)-1))
=SUMPRODUCT(--MID(B1:B8,FIND("天",B1:B8)+1,FIND("小时",B1:B8)-FIND("天",B1:B8)-1))
=SUMPRODUCT(--MID(B1:B8,FIND("小时",B1:B8)+2,FIND("分钟",B1:B8)-FIND("小时",B1:B8)-2))
仅供参考
热心网友 时间:2023-05-04 01:35
请看附件,方便快捷,已验证!希望可以帮到你!
热心网友 时间:2023-05-04 01:36
一定要用公式么? vba还好整 ,最好办的方法是 利用固定字符分列 分成 天一列 小时一列 分钟一列 然后就是简单的数学计算了。