Excel 中使用 vlookup 间接查找

如果要使用VLOOKUP并且要查找的数据位于不同的工作表中,则可以将它们与INDIRECT组合起来。它可以帮助您在单个公式中定义多个范围。

间接vlookup

在上面的示例中,我们在三个不同的电子表格中拥有每月数据。但只需一次 VLOOKUP + INDIRECT,您就可以从多张表中获取所有月份的所有产品的数量。

 =VLOOKUP($A2,INDIRECT("'"&B$1&"'!"&"A:B"),2,FALSE)

要理解这个公式,您需要将其分为两部分:

在第一部分中,我们有 INDIRECT 函数,它使用第 1 行的名称创建对工作表的引用。在下面的示例中,我们引用工作表 Jan 的范围 A:B。

公式分为两部分

您需要在 INDIRECT 中创建一个结构,以引用具有数据名称和范围的工作表。

 =INDIRECT("'"&B$1&"'!"&"A:B")

将公式移动到 Feb 列后,间接中的引用就会移动到 Feb 工作表。

间接更改引用

在第二部分中,VLOOKUP使用INDIRECT返回的表范围地址,并根据范围中指定的col_index_num获取其值。

很重要的一点

在上面的公式中,您需要正确的结构来引用具有工作表名称的范围。如果您在 INDIRECT 中输入以下结构:

 "'"&B$1&"'!"&"A:B"

他会回来的:

 "'Jan'!A:B"

替代方法

INDIRECT 是一个易失性函数。当电子表格发生更改时它会更新。这就是您可以考虑使用 CHOOSE 的原因。例如,通过 CHOOSE,您可以使用 VLOOKUP 编写三个公式。

 =CHOOSE(B$1,VLOOKUP($A2,Jan!$A:$B,2,0),VLOOKUP($A2,Feb!$A:$B,2,0),VLOOKUP($A2,Mar!$A:$B,2,0))
使用vlookup选择

在这个公式中,正如我所说,我们有三个 VLOOKUP,当使用 CHOOSE 时,您可以决定从任何 VLOOKUP 中获取结果

从任何 vlookup 中选择获取结果

在CHOOSE中我们提到了B1;在第 1 行中,您可以使用索引号从 SELECT 中获取公式值。

例如,当你有2时,CHOOSE将返回第二个VLOOKUP的值;从第三个开始,有3个。

按选择参考进行 vlookup 值

下载示例文件

添加评论

您的邮箱地址不会被公开。 必填项已用 * 标注