Excel复杂的嵌套公式获得前6个月的状态

我有2列“Team”和“Lead Time%”的数据。 数据是8个月。

我需要计算3个月的滚动平均值,并将平均数与实际目标进行比较。

步骤:1计算平均值

我使用下面提到的:

=IF(COUNTIF($C$2:C4,C4)<=2,"",AVERAGE(D2:D4)) ( Below is the screen shot for your reference) 

在这里输入图像说明

步骤:2比较平均值和实际目标值。 但挑战是我有8个月的数据,而计算滚动平均我从第三个月开始,因此前两个月将是空白的每个团队。

我想写一个简单的“IF”公式来检查团队是否达到了目标。 我写了=IF(E4="","",IF(E4="","",IF(E4>=F4,1,0))).

如果这些数据总是8个月的话,那可能会有效,但有些时候数据会是9个月,而我只需要上个/前6个月的数据。

为了实现这一点,我写了其他几个条件。 条件1: =A2*12+B2 (年*一年中的总月数+数据中的月)

条件2: =$N$3*12+$M$3 (当前年份*一年中的总月数+本月)

条件3: =IF(C2<>C3,B2,"") (确定当前月份)

=MAX(L:L) :当前月份

=MAX(A:A) :当年

=J2-I2 :确定月份

然后最后写道: =IF(K4>=6,"",IF(E4="","",IF(E4>=F4,1,0)))

现在即使数据是9或10个月,也只会计算前6个月的数据。

在这里输入图像说明

请帮助我嵌套这个复杂的公式或build议任何其他简单的方法来做到这一点非常感谢。

在这里输入图像说明

谢谢,Ganesh

这是一个应该工作的解决scheme。

 =IF(COUNTIF(C$2:C4,C4)<=2,"",AVERAGE(C4:INDIRECT("d"&MAX(MATCH(C4,C$1:C12,0),ROW(B4)-5)))) 

它使用Match将当前行中的值平均返回最多6行,以将平均值限制为正确的Team。 在这里输入图像说明