我需要帮助创建一个公式。我真的很纠结。
在一张纸上,我有一张如下所示的表格:
Received Completed
Request 1 14/01/2020 21/01/2020
Request 2 15/01/2020 17/01/2020
Request 3 16/01/2020 16/01/2020
Request 4 14/01/2020 17/01/2020
在另一张表上,我需要计算完成请求所需的平均天数,不包括周末。请求的数量各不相同,因此我需要此公式在第一张表上添加更多行时自动更新。但此公式不应包括尚未完成的请求(未提供第二个日期)
谢谢!
答案1
使用这个数组公式:
=AVERAGE(IF(C2:C5<>"",NETWORKDAYS(N(IF({1},B2:B5)),N(IF({1},C2:C5)))))
根据版本的不同,退出编辑模式时可能需要使用 Ctrl-Shift-Enter 而不是 Enter 来确认公式。
N(IF({1},
创建一个日期数组。 NETWORKDAYS(
返回日期之间的工作日数。 IF(C2:C5<>""
忽略那些没有完成日期的日期。... AVERAGE
嗯,它是平均值。
使用动态数组公式 FILTER:
=AVERAGE(NETWORKDAYS(FILTER(B2:B5,C2:C5<>""),FILTER(C2:C5,C2:C5<>"")))
注意:FILTER 是动态数组公式的一部分,可通过 Office 365 订阅获得。
答案2
这帮助你实现目标。
怎么运行的:
注意:
- 由于请求是可变的,并且您需要公式自动更新,因此最好将数据范围转换为表格。
- F 列列出了假期(您可以添加更多日期)。
请记住,使用 HOLIDAYS 是可选的。
方法 1:
- 添加新列净天数在表中。
- 将此公式插入到中
D15
。
=NETWORKDAYS([@Received],[@Completed],F$14)
-如果如果您不想使用HOLIDAYS,那么请使用这个。
=NETWORKDAYS([@Received],[@Completed])
- 单元格中的公式
D21
:
=AVERAGE(Table1[Net Days])
方法 2(不含节假日):
中的公式
D23
。=SUMPRODUCT(Table1[Completed]-Table1[Received])/COUNT(Table1[Completed])
您可以调整单元格引用。