判断 在这个公式日期之间有 周六周日就不计算周六周日 TEXT(ROUND(ABS([预计完成时间]-[任务创建时间]), 0), “# 天”)
如果你想在计算日期差时不包括周六和周日,可以使用NETWORKDAYS
函数代替直接的日期差值计算。NETWORKDAYS
函数会自动排除周末,所以你只需要使用这个函数来计算工作日的总数即可。
以下是使用NETWORKDAYS
函数的公式:
=TEXT(NETWORKDAYS([任务创建时间], [预计完成时间], {}), "# 天")
在这个公式中:
[任务创建时间]
是任务开始的日期。[预计完成时间]
是任务预期结束的日期。{}
表示没有额外的非工作日需要排除,仅排除默认的周末。
但是,如果你希望保留原始公式的基本结构,并且只想在最终结果显示时排除周末,那么直接用NETWORKDAYS
替换日期差部分是更直接的方法。原始公式 TEXT(ROUND(ABS([预计完成时间]-[任务创建时间]), 0), "# 天")
直接计算了两个日期之间的总天数差值,包括周末。
总之,为了排除周六和周日,你应该使用:
=TEXT(NETWORKDAYS([任务创建时间], [预计完成时间], {}), "# 天")
这将给出两个日期间的工作日数量,不包括周末。
NETWORKDAYS
返回所提供的两个日期之间的净工作日天数。工作日不包括周末和专门指定的假期。
NETWORKDAYS(开始日期,结束日期,[节假日])
开始日期:必需。一个代表开始日期的日期。
结束日期:必需。一个代表终止日期的日期。
节假日:可选。不在工作日历中的一个或多个日期所构成的可选区域。可以是包含日期的单元格区域,或是表示日期的序列号的数组常量。日期存储为可用于计算的序列号。 默认情况下,1900 年 1 月 1 日的序列号为 1,2012 年 1 月 1 日的序列号为 40909,这是因为它距 1900 年 1 月 1 日有 40,909 天。日期和序列号的对应关系请参考DATEVALUE函数。
示例
NETWORKDAYS(“2018/4/18”,“2019/4/18”, {43268,43237} ) => 260,其中43268和43237分别代表"2018/6/18"和"2018/5/18",在计算工期时会将这两天跳过,日期和序列号的对应关系请参考DATEVALUE函数。
2.networkdays的语法格式
=NETWORKDAYS(start_date,end_date,holidays)
=networkdays(开始日期,结束日期,例外情况)注意第三个参数,如果有选择日期,则会将这个日期剔除。
3.Excel计算工作日天数
如图所示,计算项目期间的工作日数,去除单位节假日。
=NETWORKDAYS(A3,B3,A6:A9)
如图所示,双休日为6天
4.如图所示,单位节假日为4天,且不包含在双休日内。望采纳,谢谢!