提取excel中给定起始值的列表的一部分
我想提取列表的一部分,给出通过索引/匹配组合或vlookup函数find的起始值。 然而,因此只有初始值被返回,但是列表中的后续值也是感兴趣的,应该遵循这个初始的发现值。 有没有一种方法来组合返回子数组的函数? 预先感谢您的帮助。 最好的问候,奥利弗
假设我们有这样的数据:
而我们想要英国人 , VLOOKUP()只会回到威廉。 如果我们不仅要威廉 ,而且要在C1中input:
联合王国
在C2中input数组公式:
=IFERROR(INDEX($B$2:$B$22, SMALL(IF(C$1=$A$2:$A$22, ROW($A$2:$A$22)-MIN(ROW($A$2:$A$22))+1, ""), ROW(A1))),"")
并抄下来:
数组公式必须使用Ctrl + Shift + Enterinput,而不仅仅是Enter键。
1.增加行/列计数选项
1A。 起始值,子列表长度
让我们假设这个样本数据和结果格式:
ABCD --------------------------------------------- 1|John Start Value Amy Amy 2|Jane Sub-List Length 3 Amber 3|Amy Chris 4|Amber 5|Chris 6|Dan 7|Bob
您可以通过使用以下公式并自动填充来实现此目的:
=IFERROR(INDEX($A:$A,(MATCH($C$1,$A:$A,0))+IF(ROWS($1:1)<=$C$2,ROWS($1:1)-1,#VALUE!)),"")
1B。 起始值,结束值
示例数据和结果格式:
ABCD --------------------------------------------- 1|John Start Value Amy Amy 2|Jane End Value Dan Amber 3|Amy Chris 4|Amber Dan 5|Chris 6|Dan 7|Bob
使用此公式并自动填充:
=IFERROR(INDEX($A:$A,(MATCH($C$1,$A:$A,0))+IF(ROWS($1:1)<=(MATCH($C$2,$A:$A,0)-MATCH($C$1,$A:$A,0)+1),ROWS($1:1)-1,#VALUE!)),"")
1C。 起始值,列表结束
示例数据和结果格式:
ABCD --------------------------------------------- 1|John Start Value Chris Chris 2|Jane Dan 3|Amy Bob 4|Amber 5|Chris 6|Dan 7|Bob
使用此公式并自动填充:
=IFERROR(INDEX($A:$A,(MATCH($C$1,$A:$A,0))+IF(ROWS($1:1)<=(COUNTA($A:$A)-MATCH($C$1,$A:$A,0)+1),ROWS($1:1)-1,#VALUE!)),"")
注意:对于选项1a-1c,如果你想有一个水平列表结果,用COLUMNS($A:A)
replaceROWS($1:1)
COLUMNS($A:A)
并自动填充到右边
2.使用预定义的数组:
注意:这些选项要求您select您想要的值的范围,然后使用Ctrl + Shift + Enter键input数据。
2A。 垂直子表,固定长度:
样本数据和结果格式,固定长度为4
ABCD --------------------------------------------- 1|John Start Value Amy Amy 2|Jane Amber 3|Amy Chris 4|Amber Dan 5|Chris 6|Dan 7|Bob
select单元格D1:D4
并在此公式中input:
=INDEX($A:$A,MATCH($C$1,$A:$A,0)+TRANSPOSE({0,1,2,3}))
然后使用Ctrl + Shift + Enter
2B。 水平子表,固定长度:
样本数据和结果格式,固定长度为4
ABCDEFG ---------------------------------------------------------- 1|John Start Value Amy Amy Amber Chris Dan 2|Jane 3|Amy 4|Amber 5|Chris 6|Dan 7|Bob
与没有TRANSPOSE
并select单元格的最后一个公式相同D1:G1
:
=INDEX($A:$A,MATCH($C$1,$A:$A,0)+{0,1,2,3})
再次使用Ctrl + Shift + Enter
注:要增加长度,请向数组{0,1,2,3, ...}
添加{0,1,2,3, ...}