=LET(x,MOD(A3,1)*24,y,MOD(B3,1)*24,a,INT(A3),b,INT(B3),IF(x<6,IF(y>22,16 (b-a)*16,y-6 (b-a)*16),IF(y>22,22-x (b-a)*16,y-x (b-a)*16)))
日期及时间函数是以特定形式展示的数值,其数值本会为相对于1900年天数,不足一天的以小数的形式展现。
MOD函数是Excel中的一个数学函数,它可以用来计算一个数(被除数)除以另一个数(除数)后的余数。例如,10除以3等于3余1,那么MOD(10,3)就等于1。
在你的公式中,=MOD(A2,1),你的被除数是A2,也就是日期2023-03-08 06:09:16,你的除数是1。在Excel中,日期和时间都是用数字来表示的。日期是从1900年1月1日开始计算的天数,时间是用小数来表示一天中的比例。例如,2023-03-08 06:09:16在Excel中等于44376.25625。
当你用MOD(A2,1)来计算余数时,相当于把A2除以1后只保留小数部分,也就是时间部分。所以结果就是0.25625,在Excel中表示为06:09:16。
int为取整函数,对日期取整也就相当于取其整天的部分,再相减就是天数,每天最多16个小时的有效时间,天数差*16得到换算成小时的整天有效小时数。
最后根据6点、22点两个时间节点区分为四种情况,分别将不足一天的有效小时数 整天有效小时数得到最后的答案。
评论 (0)