在阵列中找到D2时返回A2

时间:2013-10-15 03:19:05

标签: arrays excel

正在输入Sheet 1"Commercial Projects"

的数据

Sheet 2"Bore"是我希望将数据提取到的地方。

我一直在输入我的公式作为数组。

例如......

A2工作表的"Bore"中,我想在A2工作表上返回"Commercial Projects"的值,前提是D2 "Commercial Projects" 1}}不是空白。但是,如果D2为空,我想在column A中为column D中的值不为空的下一个实例返回值。

这很难描述,所以这是我一直在使用的公式。问题是由于某种原因,在column D不为空的最后一次出现后,我仍然得到column A的值。

{=IF(IF(ISERROR(INDEX('Commercial Projects'!$A$2:$AC$101,SMALL(IF('Commercial Projects'!$A$2:$AC$101>0,ROW($A$2:$A$101)),ROW(1:1)),1)),"",INDEX('Commercial Projects'!$A$2:$AC$101,SMALL(IF('Commercial Projects'!$D$2:$D$101>0,ROW('Commercial Projects'!$A$2:$A$101)),ROW(1:1)),1))="","",INDEX('Commercial Projects'!$A$2:$AC$101,SMALL(IF('Commercial Projects'!$D$2:$D$101>0,ROW('Commercial Projects'!$A$2:$A$101)),ROW(1:1)),1))}

1 个答案:

答案 0 :(得分:0)

请尝试:

=IF(OFFSET('Commercial Projects'!A2,0,3)="",INDEX('Commercial Projects'!A2:A101,MATCH(1,IF('Commercial Projects'!D2:D101<>0,IF('Commercial Projects'!D2:D101<>"",1)),0)),'Commercial Projects'!A2)  

输入 Ctrl + Shift + 输入并复制到适合。