2017-09-04 87 views
0

资源的我其中我试图链路与前置或后续依赖行(简化MS项目类型链接)的Excel出从阵列式

excel example

公式尝试自动计算的Excel文件来自前辈的接班人。最大的挑战就是和处理合并单元格列A的公式为:

{=LARGE(INDIRECT(CONCATENATE("$a$1:$a$",SMALL(IF($C$2:$C$101=INDIRECT(CONCATENATE("a",LARGE(IF(ISNUMBER($A$2:$A2),ROW($A$2:$A2)),1))),ROW(A$2:A$101)),ROW(A2)-LARGE(IF(ISNUMBER($A$2:$A2),ROW($A$2:$A2)),1)+1))),1)} 

正如你所看到的,这个正确的计算值,但如果我添加IFERROR()处理错误条件,Excel的抱怨该功能会导致资源耗尽。有什么方法可以解决这个问题,或者简化我的公式以避免这个问题?

+0

也许你可以使用条件格式错误细胞的字体格式来与内部颜色相同的颜色,有效地使其不可见。 –

+0

@RonRosenfeld - 恕我直言,使用';;;'作为自定义数字格式是使单元格的内容'不可见'比格式化字体以匹配单元格填充颜色更好的方法。 – Jeeped

+0

我已将您的数据重新键入并将A列中的单元格合并到5个单元格块中的单个单元格中,我无法让您的公式正常工作,也无法理解您要完成的工作。 – Jeeped

回答

0

它的工作原理,如果我们更换所有INDIRECT(CONCATENATE())与非易失性索引引用:

=IFERROR(LARGE($A$1:INDEX(A:A,SMALL(IF($C$2:$C$101=INDEX(A:A,LARGE(IF(ISNUMBER($A$2:$A2),ROW($A$2:$A2)),1)),ROW(A$2:A$101)),ROW(A2)-LARGE(IF(ISNUMBER($A$2:$A2),ROW($A$2:$A2)),1)+1)),1),"") 

![enter image description here

+0

完美!这工作很好。谢谢! – user162017

+0

@ user162017请通过点击答案旁边的复选标记来标记为正确。 –