Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.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_Date_Average_Countif - Fatal编程技术网

Excel:获取每个日期的平均任务长度

Excel:获取每个日期的平均任务长度,excel,date,average,countif,Excel,Date,Average,Countif,我有一些任务的开始和结束日期如下: 我想计算每天的活动正在进行的工作,以及每天活动任务的平均工作时间。当前在制品I能够按照B2公式计算: 但是,我如何使用C2:C7的类似公式计算所有活动任务的平均工作时间?(我在上图中提供了预期结果,并说明了原因) 以下是csv示例(将作为一张图纸导入): 可以使用数组公式 在B2中: =总和(如果(任务!$B$2:$B$9=A2;1;0)) 并接受公式CTRL+SHIFT+ENTER 编辑:未添加C2公式 =AVERAGE(IF(IF(Tasks!$B$

我有一些任务的开始和结束日期如下:

我想计算每天的活动正在进行的工作,以及每天活动任务的平均工作时间。当前在制品I能够按照B2公式计算:

但是,我如何使用C2:C7的类似公式计算所有活动任务的平均工作时间?(我在上图中提供了预期结果,并说明了原因)

以下是csv示例(将作为一张图纸导入):

可以使用数组公式 在B2中:

=总和(如果(任务!$B$2:$B$9=A2;1;0))
并接受公式CTRL+SHIFT+ENTER

编辑:未添加C2公式

=AVERAGE(IF(IF(Tasks!$B$2:$B$9<=A2;1;0)*IF(Tasks!$C$2:$C$9>=A2;1;0)=1;Tasks!$C$2:$C$9-Tasks!$B$2:$B$9;""))
=平均值(如果(任务!$B$2:$B$9=A2;1;0)=1;任务!$C$2:$C$9-任务!$B$2:$B$9;“”)
并接受公式CTRL+SHIFT+ENTER

编辑2:协商后的C2公式

=IFERROR(AVERAGE(IF(IF(Tasks!$B$2:$B$9<=A2;1;0)*IF(Tasks!$C$2:$C$9>A2;1;0)*IF((Tasks!$C$2:$C$9-Tasks!$B$2:$B$9)>0;1;0)=1;A2-Tasks!$B$2:$B$9+1;""));0)
=IFERROR(平均值(如果(任务!$B$2:$B$9A2;1;0)*如果(任务!$C$2:$C$9-任务!$B$2:$B$9)>0;1;0)=1;A2任务!$B$2:$B$9+1;“”);0)

接受公式CTRL+SHIFT+ENTER

您所说的…并运行X天(任务编号)…的部分,您将连接不同的任务id。我认为您无法使用纯Excel在每一行中实现这一点。也许你需要VBA代码。谢谢你的快速回答,但是B2的公式在屏幕截图中是可见的,你的C2公式对我不起作用(我得到了一个#DIV/0),即使在将它修改为{=AVERAGE(IF(IF(IF(Tasks!$B$2:$B$9=A2,1,0)=1,Tasks!$C$2:$C$9-Tasks!$B$2:$B$9,”)之后)对不起,波兰语中的“Jeżeli”是“IF”—我有“波兰语”excel。也许如果您添加函数if error,那么将是好的->{=iferror(average(…);0)}嗨,我试过了,但所有单元格C2:C9都有错误,所以它们在iferror(,0)中都是0。我还在描述中上传了csv单页版本。如果你愿意,如果你的公式对你有效,你可以玩一下吗?我把我的文件发到这里-可能是帮助你好,谢谢你的文件-不知为什么Excel无法将本地日期格式转换为内部使用的格式-一旦我将日期重新设置为美国标准,你的公式就有效了。但是,您只需计算当天活动的总任务长度的平均值(即C2:C9-B2:B9),但我需要截至该日期的当前持续平均值,即:如果任务长度为3天,但我们仅在2天之后,则此任务占平均值的2天(而不是3天)。您是否看到了获得上述“预期结果”的方法?
=AVERAGE(IF(IF(Tasks!$B$2:$B$9<=A2;1;0)*IF(Tasks!$C$2:$C$9>=A2;1;0)=1;Tasks!$C$2:$C$9-Tasks!$B$2:$B$9;""))
=IFERROR(AVERAGE(IF(IF(Tasks!$B$2:$B$9<=A2;1;0)*IF(Tasks!$C$2:$C$9>A2;1;0)*IF((Tasks!$C$2:$C$9-Tasks!$B$2:$B$9)>0;1;0)=1;A2-Tasks!$B$2:$B$9+1;""));0)