Excel公式显示多个值(如Vlookup)

时间:2015-05-28 18:13:27

标签: excel excel-formula

我需要执行类似于vlookup的操作,但是有一个值我想在不同的工作表上显示它发现的多个项目。防爆。查找A,A找到,B列中的信息是唯一的,然后从第二个工作表中的另一行再次查找A,B列中的信息再次是唯一的。

1 个答案:

答案 0 :(得分:2)

多回程是一个非常常见的问题。主要想法是使用INDEX-SMALL而不是INDEX-MATCH。通常,您只需使用MATCH搜索要返回的行。在这种情况下,您需要跟踪多个匹配并按顺序返回它们。 "按顺序"部分最好由SMALL处理,从ROW输入一个输入以获得一组数字越来越多。

范围图片

ranges for formula

单元格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)))

工作原理

  • 外线电话是INDEX,它正在查看VALUE列,并从那里返回结果。
  • INDEX需要行号才能返回值。此行号是通过查找与给定搜索词匹配的行来确定的。
  • 要查找行,请将ID列与E3中的搜索值进行比较。该检查包含在IF中,如果匹配,则会返回ROW个数字。
  • 行号计算为ROW()-ROW(top),这是为了说明从B3开始的数据偏移量。
  • 一旦我们有一个行号数组,SMALL用于按递增顺序返回它们。 SMALL将跳过非数字,其中包含为不匹配的行返回的FALSE值。
  • 最后,为了INDEX的单个数字,SMALL使用ROW(1:1),当公式被复制时,## STOP REFERRER SPAM ## RewriteCond %{HTTP_REFERER} ^([^.]+.)*?best-seo-solution\.com [NC,OR] RewriteCond %{HTTP_REFERER} ^([^.]+.)*?best-seo-offer\.com [NC,OR] RewriteCond %{HTTP_REFERER} ^([^.]+.)*?7makemoneyonline\.com [NC,OR] RewriteCond %{HTTP_REFERER} ^([^.]+.)*?buttons-for-website\.com [NC,OR] RewriteCond %{HTTP_REFERER} ^([^.]+.)*?buttons-for-your-website\.com [NC] RewriteRule .* – [F] ## STOP REFERRER SPAM ## 将递增,给出1-2-3 -... < / LI>