Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 已用天数小时分钟不包括周末和节假日时间_Excel_Excel Formula - Fatal编程技术网

Excel 已用天数小时分钟不包括周末和节假日时间

Excel 已用天数小时分钟不包括周末和节假日时间,excel,excel-formula,Excel,Excel Formula,这听起来很简单,但我一直在想方设法找出解决办法。在我秃顶之前,任何帮助都会很好 我需要一个能够 计算两个日期时间值之间的持续时间(天、小时、分钟)(例如2012年5月12日下午5:30和2012年7月12日下午5:45) 不包括周末和节假日 我希望公式的结果如下所示“例如2天0小时15分钟” 谢谢 链接到您可以使用NETWORKDAYS和NETWORKDAYS.INTL来实现此目的 需要进行一点操作,因为这些净回报是全天的: 使用这些函数计算非工作日数,然后从开始日期和结束日期之间的差值中

这听起来很简单,但我一直在想方设法找出解决办法。在我秃顶之前,任何帮助都会很好

我需要一个能够

  • 计算两个日期时间值之间的持续时间(天、小时、分钟)(例如
    2012年5月12日下午5:30
    2012年7月12日下午5:45
  • 不包括周末和节假日
我希望公式的结果如下所示“例如
2天0小时15分钟”

谢谢


链接到您可以使用
NETWORKDAYS
NETWORKDAYS.INTL
来实现此目的

需要进行一点操作,因为这些净回报是全天的:

  • 使用这些函数计算非工作日数,然后从开始日期和结束日期之间的差值中减去

    =E3-D3-(NETWORKDAYS.INTL(D3,E3,"0000000")-NETWORKDAYS(D3,E3,$A$16:$A$24))
    
这将返回工作日差,其中1.0=1天

  • NETWORKDAYS.INTL(D3,E3,“0000000”)
    计算两个日期之间的整个天数(没有周末,没有节假日)

  • NETWORKDAYS(D3,E3,“0000000”,$A$16:$A$24)
    计算两个日期之间的整个工作日(周六/周日周末、节假日,请参见
    中的列表$A$16:$A$24

  • 两个日期之间非工作日的差异

  • E3-D3
    是开始和结束日期/时间之间的时间(1.0=1天)


使用自定义数字格式以所需格式显示结果

d "Days" h "Hours" mm "Mins"

注意:此格式不适用于负值,当结束日期早于开始日期时,您需要另一种格式。

您可以使用
NETWORKDAYS
NETWORKDAYS.INTL
实现此目的

需要进行一点操作,因为这些净回报是全天的:

  • 使用这些函数计算非工作日数,然后从开始日期和结束日期之间的差值中减去

    =E3-D3-(NETWORKDAYS.INTL(D3,E3,"0000000")-NETWORKDAYS(D3,E3,$A$16:$A$24))
    
这将返回工作日差,其中1.0=1天

  • NETWORKDAYS.INTL(D3,E3,“0000000”)
    计算两个日期之间的整个天数(没有周末,没有节假日)

  • NETWORKDAYS(D3,E3,“0000000”,$A$16:$A$24)
    计算两个日期之间的整个工作日(周六/周日周末、节假日,请参见
    中的列表$A$16:$A$24

  • 两个日期之间非工作日的差异

  • E3-D3
    是开始和结束日期/时间之间的时间(1.0=1天)


使用自定义数字格式以所需格式显示结果

d "Days" h "Hours" mm "Mins"

注意:此格式不适用于负值,当结束日期早于开始日期时,您需要另一种格式。

以下公式的工作原理与treat类似,无需额外的格式设置或操作

为了使其更稳定,我将2012/13年英国的所有假日日期转换为“Excel序列号”格式,并将它们放在一个数组括号中

将公式中的“D5”替换为课程或指标“结束日期”的单元格参考,将“E5”替换为课程或指标“完成日期”


=IF(E5以下公式的工作原理与处理类似,无需额外格式化或操作

为了使其更稳定,我将2012/13年英国的所有假日日期转换为“Excel序列号”格式,并将它们放在一个数组括号中

将公式中的“D5”替换为课程或指标“结束日期”的单元格参考,将“E5”替换为课程或指标“完成日期”


=IF(E5)为了使计算更简单,请使用课程结束前2小时作为参考点,26小时标记为已交付。您如何获得假期数据?默认情况下,假期数据不在Excel或操作系统的任何部分。Excel论坛说,我需要登录或类似登录才能获得您的示例工作簿。我从h
NETWORKDAYS
function.@moshjosh你应该在这个网站上发布你的数据和/或电子表格。链接到另一个论坛是一种糟糕的形式。很抱歉,我厚颜无耻,我不知道如何附加我的文件。我试图上传一张图片,但我被告知我不能,因为我是新手。无论如何,请从另一个论坛找到解决方案“未命名表单”。[见下面我的帖子]为了简化计算,请使用课程结束时间前2小时作为参考点,26小时标记为已交付。您如何获得假期数据?默认情况下,假期数据不在Excel或操作系统的任何部分。Excel论坛说,我需要登录或类似登录才能获得您的示例工作簿。我从
NETWORKDAYS
function.@moshjosh你应该在这个网站上发布你的数据和/或电子表格。链接到另一个论坛是一种糟糕的形式。很抱歉,我厚颜无耻,我不知道如何附加我的文件。我试图上传一张图片,但我被告知我不能,因为我是新手。无论如何,请从另一个论坛找到解决方案。”未命名表格“[见下面我的帖子]我想你会发现@chris neilsen的答案更灵活,你应该接受(点击旁边的复选标记)。有了这个,你明年就必须重新硬编码你的假期。谢谢你,克里斯,正如之前所说,我感谢你的投入和时间。对我来说,代码中包含的假期更好,代码可以从一个单元格移动到另一个单元格;从一张工作表移动到另一张工作表,而不必担心日历日期范围也会移动($16:$24)。我已经包括了两年的假期,这足以满足我的需要。它也适用于负面数字。至于我接受什么,解决方案是出于我的目的而提出的,我可以确定什么更适合我的目的?只是澄清一下,是我做了上述评论,而不是克里斯。我很高兴你有一个适合你的解决方案!我想你会发现@chris neilsen的答案更灵活