员工日程安排 - 计算1个单元格中的总时间;自动格式化时间

时间:2017-05-30 17:53:24

标签: excel time schedule

我有一个现有的员工日程表excel文件,我想做的更聪明。"

对于每位员工,在一周的每一天输入一个小区(例如,上午7点至下午3点)的时间。我想在每周末计算每位员工的总工作时数。我有一个公式可以做到这一点,但它带来了额外的问题。

    =((SUBSTITUTE(B4,LEFT(B4,FIND("-",B4)+1),"")*1-SUBSTITUTE(B4,RIGHT(B4,FIND("-",B4)-1),"")*1)+(SUBSTITUTE(B4,LEFT(B4,FIND("-",B4)+1),"")*1<SUBSTITUTE(B4,RIGHT(B4,FIND("-",B4)-1),"")*1))*24

此处,时间在单元格B4中输入,此公式将粘贴到您希望计算总小时数的单元格中。

在此公式中,需要以格式&#34; XX:XX AM - XX:XX PM&#34;输入时间。否则它不起作用。此外,如果一个单元格是空白或说是OFF,它再次不起作用。所以我想要的是自动将在任何单元格中输入的时间转换为&#34; 7 AM-3PM&#34;格式为&#34;上午7:00 - 下午3:00。&#34;

此外,如果单元格值为空或者为OFF,则要将单元格的值视为&#34; 00:00 AM - 00:00 AM&#34;但仍显示为空白/关闭。

我计算一周的总小时数的方法是总结每天的上述公式(它变得很长,我不确定这是否是最好的方法)。

对此有任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

这将带您进入并按照自己的意愿行事:

=IFERROR(TRIM(SUBSTITUTE(SUBSTITUTE(MID(A1,FIND("-",A1)+1,LEN(A1)),"AM"," AM"),"PM"," PM")) -TRIM( SUBSTITUTE(SUBSTITUTE(LEFT(A1,FIND("-",A1)-1),"AM"," AM"),"PM"," PM")),0)

[1]: https://i.stack.imgur.com/A3i