VLOOKUP函数在多个工作表中查找相匹配的值

时间:2023-09-23 15:28:28 

在某个工作表单元格区域中查找值时,我们通常都会使用VLOOKUP函数。但是,如果在多个工作表中查找值并返回第一个相匹配的值时,可以使用VLOOKUP函数吗?本文将讲解这个技术。

最简单的解决方案是在每个相关的工作表中使用辅助列,即首先将相关的单元格值连接并放置在辅助列中。然而,有时候我们可能不能在工作表中使用辅助列,特别是要求在被查找的表左侧插入列时。因此,本文会提供一种不使用辅助列的解决方案。

下面是3个示例工作表:

VLOOKUP函数在多个工作表中查找相匹配的值

图1:工作表Sheet1

VLOOKUP函数在多个工作表中查找相匹配的值

图2:工作表Sheet2

VLOOKUP函数在多个工作表中查找相匹配的值

图3:工作表Sheet3

示例要求从这3个工作表中从左至右查找,返回Colour列中为“Red”对应的Amount列中的值,如下图4所示。

VLOOKUP函数在多个工作表中查找相匹配的值

图4:主工作表Master

数组公式如下:

=VLOOKUP($A3,INDIRECT(“‘”&INDEX(Sheets,MATCH(TRUE,COUNTIF(INDIRECT(“‘”&Sheets&”‘!B:B”),$A3)>0,0))&”‘!B1:D10″),3,0)

其中,Sheets是定义的名称:

名称:Sheets

引用位置:={“Sheet1″,”Sheet2″,”Sheet3”}

在公式中使用的VLOOKUP函数与平常并没有什么不同,我们首先需要确定在哪个工作表中进行查找,因此我们使用的函数应该能够操作三维单元格区域,而COUNTIF函数就可以。公式中的:

COUNTIF(INDIRECT(“‘”&Sheets&”‘!B:B”),$A3)

转换为:

COUNTIF(INDIRECT(“‘”&{“Sheet1″,”Sheet2″,”Sheet3″}&”‘!B:B”),$A3)

转换为:

COUNTIF(INDIRECT({“‘Sheet1’!B:B”,”‘Sheet2’!B:B”,”‘Sheet3’!B:B”}),$A3)

INDIRECT函数指令Excel将这个文本字符串数组中的元素转换为单元格引用,然后传递给COUNTIF函数,同时单元格A3中的值作为其条件参数,这样上述公式转换成:

{0,1,3}

分别代表工作表Sheet1、Sheet2、Sheet3的列B中“Red”的数量。

因为我们想得到第一个匹配的结果,所以将该数组传递给MATCH函数:

MATCH(TRUE,COUNTIF(INDIRECT(“‘”&Sheets&”‘!B:B”),$A3)>0,0)

转换为:

MATCH(TRUE,{0,1,3}>0,0)

转换为:

MATCH(TRUE,{FALSE,TRUE,TRUE},0)

结果为:

2

因此,将在工作表列表中的第2个工作表即Sheet2中执行VLOOKUP操作。

现在,将上面的结果作为参数值传递给INDEX函数:

INDEX(Sheets,MATCH(TRUE,COUNTIF(INDIRECT(“‘”&Sheets&”‘!B:B”),$A3)>0,0))

转换为:

INDEX(Sheets,2)

转换为:

INDEX({“Sheet1″,”Sheet2″,”Sheet3”},2)

结果为:

Sheet2

这里,需要使用INDIRECT函数进一步构造来生成传递给VLOOKUP函数的单元格区域,因此:

=VLOOKUP($A3,INDIRECT(“‘”&INDEX(Sheets,MATCH(TRUE,COUNTIF(INDIRECT(“‘”&Sheets&”‘!B:B”),$A3)>0,0))&”‘!B1:D10″),3,0)

转换为:

=VLOOKUP($A3,INDIRECT(“‘Sheet2″&”‘!B1:D10”),3,0)

转换为:

=VLOOKUP($A3,INDIRECT(“‘Sheet2′!B1:D10”),3,0)

转换为:

=VLOOKUP($A3,’Sheet2’!B1:D10,3,0)

得到结果:

55

标签:Countif函数,Excel函数,VLOOKUP函数,Excel教程
0
投稿

猜你喜欢

  • 微软Office APP正式发布,你会放弃WPS吗?

    2023-11-06 12:22:34
  • Win10 20H2高配电脑玩游戏卡怎么办?

    2023-11-14 17:50:56
  • 教你在Excel里做GA的水平百分比图的详细步骤(图文教程)

    2022-04-28 20:41:03
  • Word如何输入直径符号

    2023-09-02 11:21:49
  • Excel工作表打印线删除图解

    2023-08-08 08:20:11
  • word 如何压缩与重设图片

    2023-08-22 02:22:05
  • 怎么在excel找出重复数据?

    2023-10-02 12:08:26
  • 如何在Microsoft Word中制作名片

    2023-05-03 18:18:48
  • 如何快速取消Word中的所有超链接

    2023-08-17 05:12:59
  • word文档中表格如何合并成一个大单元格?

    2022-03-14 16:04:18
  • word前几页不显示页码的图文教程

    2023-03-30 00:56:30
  • 在excel2003如何合并和拆分单元格呢?

    2022-11-27 04:43:26
  • WPS如何隐藏备注栏

    2023-09-11 10:46:05
  • word 如何检查文档并删除不可见内容

    2022-09-02 22:59:45
  • excel如何撤销工作表保护

    2022-11-25 20:32:16
  • word怎样设置行间距

    2023-12-03 21:21:10
  • Excel中多个数求和、差、积、商具体操作方法介绍

    2022-06-13 09:38:32
  • Word空白页的多种清除办法 Office文档怎么删除空白页

    2022-11-22 09:35:54
  • word怎么给文档添加密码

    2022-08-26 07:00:42
  • Excel如何将数字设为文本格式

    2022-05-12 01:28:07
  • asp之家 电脑教程 m.aspxhome.com