Excel – 基于条件的networking日平均计算
我有三列excel显示解决(1,0),开始date和最后更改date。 我所说的列是从sql数据库中读取的。 我很难做出一个公式,给出excel中求解= 1的networking日的平均值。 帮帮我?
最简单的方法:
在单元格D1中键入“差异”。
在单元格D2中,键入
=(C2-B2)
以获得这两个date之间的差异。 向下拖动这两列的长度。
突出显示列标题A1:D1,然后单击sorting和筛选 – >筛选。
现在点击第1列的下拉菜单并取消选中“0”。 只有logging1将被留下。
然后转到列的底部,并在D列的第一个空单元格中键入:
=average(D2:D...)
对于“…”input你有一个数字的D列中的最后一个单元格。 然后只需按下input。
NETWORKDAYS
函数不接受范围作为开始date或结束date,但在Excel 2007或更高版本中它接受“数组”,所以这样的数组公式将这样的数组公式中的平均A和B之间的工作日数col A = 1
=AVERAGE(IF(A2:A10=1,NETWORKDAYS(B2:B10+0,C2:C10+0)))
用CTRL + SHIFT + ENTER确认
+0将B2:B10
这样的范围转换为NETWORKDAYS
可以处理的数组。 由于这些+ 0,你只能在B2:C10中有数值(如date)
我猜测函数INDIRECT
可以帮助结合=AVERAGE(IF(A1:A?=1,NETWORKDAYS(B2:B?+0,C2:C?+0)))
。 从Excel帮助:“[INDIRECT函数]返回由文本string指定的引用。立即评估引用以显示其内容。当您要更改公式中单元格的引用而不更改公式本身时使用INDIRECT。
此外(这不是专门回答你的问题,但你可能会觉得它有用),functionSUBTOTAL
可以给你只显示单元格中的平均值(即不隐藏或过滤)。 因此,您可以应用filter来查看您正在查找的平均值。