我在excel中有以下结构化的表,其中包含1000的行。
我想为列A中的每个值返回列B的最后一个单元格值。
例如:
[我也尝试过VLOOKUP,HLOOKUP,INDEX的公式如此之多,但我最终遇到了更多的冲突情况。任何人都可以写下公式来满足我的要求吗?
VLOOKUP
HLOOKUP
INDEX
如果您不介意将C列用作帮助者列,则可以使用类似的内容:
单元格C1中的数组公式(在输入公式时按Control + Shift + Enter)并向下复制。
=IF(A1="","",IFERROR(INDEX($A2:$B$20,MATCH(FALSE,ISBLANK($A2:$A$20),0)-1,2),LOOKUP(2,1/(B2:$B$20),B2:$B$20)))
如果您不使用数组公式,则可以使用以下解决方案:像这张图片:
在第一个单元格=OFFSET(A1;SUMPRODUCT(MAX(($A$1:$A1<>"")*(ROW($A$1:$A1))))-ROW(A1);0)中使用列C作为此公式的帮助者>>
=OFFSET(A1;SUMPRODUCT(MAX(($A$1:$A1<>"")*(ROW($A$1:$A1))))-ROW(A1);0)
并在D列的第一个单元格=IF(A1="";"";INDEX($B$1:$B$13;SUMPRODUCT(MAX((ROW($A$1:$A$13))*($C$1:$C$13=A1)))))中使用此公式]
=IF(A1="";"";INDEX($B$1:$B$13;SUMPRODUCT(MAX((ROW($A$1:$A$13))*($C$1:$C$13=A1)))))
并将填充信息复制到所有单元格。