显示多个值的Excel公式(如Vlookup)
我需要执行一些类似于vlookup的操作,但是有一个值,我想在不同的工作表上显示它发现的多个项目。例如,查找A,找到A,B列中的信息是唯一的,然后从第二张工作表的另一行中再次查找A,B列中的信息也是唯一的。多重返回是一个非常常见的问题。主要思想是使用显示多个值的Excel公式(如Vlookup),excel,excel-formula,Excel,Excel Formula,我需要执行一些类似于vlookup的操作,但是有一个值,我想在不同的工作表上显示它发现的多个项目。例如,查找A,找到A,B列中的信息是唯一的,然后从第二张工作表的另一行中再次查找A,B列中的信息也是唯一的。多重返回是一个非常常见的问题。主要思想是使用INDEX-SMALL而不是INDEX-MATCH。通常,您只需使用MATCH搜索要返回的行。在这种情况下,您需要跟踪多个匹配项并按顺序返回它们。“顺序”部分最好由SMALL处理,从行向其输入一个递增的数字数组 范围图片 单元格中的公式F3是一个数
INDEX-SMALL
而不是INDEX-MATCH
。通常,您只需使用MATCH
搜索要返回的行。在这种情况下,您需要跟踪多个匹配项并按顺序返回它们。“顺序”部分最好由SMALL
处理,从行
向其输入一个递增的数字数组
范围图片
单元格中的公式F3是一个数组公式(使用CTRL+SHIFT+ENTER输入)并向下复制,以确保它包含尽可能多的匹配项。额外的行返回#NUM代码>不需要时
=INDEX($C$3:$C$8,SMALL(IF($B$3:$B$8=$E$3,ROW($B$3:$B$8)-ROW($B$2)),ROW(1:1)))
它的工作原理
- 外部调用是到
索引
,它查看值
列并从中返回结果
索引
需要一个行号来返回值。此行号通过查找与给定搜索项匹配的行来确定
- 为了查找行,将
ID
列与E3
中的搜索值进行比较。该检查被包装在IF
中,如果存在匹配项,则返回行
编号
- 行号计算为
row()-行(顶部)
这是为了说明从B3
开始的我的数据的偏移量
- 一旦我们有了一个行号数组,
SMALL
用于按递增顺序返回它们SMALL
将跳过非数字,其中包括为不匹配行返回的FALSE
值
- 最后,为了使
索引
,小
使用行(1:1)
,该行将随着公式的向下复制而递增,给出1-2-3-
我使用IF
和数组公式在类似的上下文中实现了这一点。为了提供进一步的帮助,您能否提供样本数据和所需的输出?当做