公式缩短(使用IF,MAX)

有没有办法缩短这些公式中的任何一个? 考虑到重新计算数据所需的时间,处理它们似乎需要很长时间(最多15分钟)。

此链接提供的文件。 文件中的标题是针对以下各个公式的。

latest 24 mth data =IF(C4>=EDATE(MAX($C$4:$C$1048576),-23),"Latest Months","Consol. Years") Past 7 Years =IF(D4>=MAX($D$4:$D$1048576)-7,"Past 7 years","") Latest Season =IF(AND(MONTH(MAX($C$4:$C$1048576))>=4,MONTH(MAX($C$4:$C$1048576))<=10),IF(AND(D4=MAX($D$4:$D$1048576)-5,E9="W"),"Latest Seasons",IF(D4>=MAX($D$4:$D$1048576)-4,"Latest Seasons","")),IF(D4>=MAX($D$4:$D$1048576)-4,"Latest Seasons","")) Latest Year =IF(D4>=MAX($D$4:$D$1048576)-4,"Latest yrs","") 

我在这里看到的主要问题是你的范围太大了。 你的公式正在评估比他们需要确定最大date多90万个单元格。 您可以将范围设置为$ C $$:$ C $ 150000,这将减less处理时间。

如果您的范围不断扩大,请考虑制作一个命名范围,通过名称pipe理器进行扩展,然后键入如下内容:= OFFSET(Sheet1!$ C4,0,0,COUNTA(Sheet1!$ C $ 4:$ C $ 150000), 1)

另一个select是在一个单元格中获取最大date,然后在公式的其余部分继续引用该单元格的值。