Excel VLookup可以使用动态数组(由字符串确定)吗?

Excel VLookup可以使用动态数组(由字符串确定)吗?,excel,excel-formula,vlookup,Excel,Excel Formula,Vlookup,如果我让我的Vlookup公式=Vlookup(B21,F_ccii_CPI,2,FALSE),它返回的结果很好 如果我让我的,如果我让我的Vlookup公式=Vlookup(B21,“F_”和“ccii_CPI”,2,FALSE),它就不起作用了 有什么办法可以解决这个问题吗?你要找的是间接的 =VLOOKUP(B21,INDIRECT("F_" & "CCIII_CPI"), 2, FALSE) 基本上,间接获取表示范围的文本,并使Excel将其识别为范围 i、 e.=间接(“A”

如果我让我的Vlookup公式=Vlookup(B21,F_ccii_CPI,2,FALSE),它返回的结果很好

如果我让我的,如果我让我的Vlookup公式=Vlookup(B21,“F_”和“ccii_CPI”,2,FALSE),它就不起作用了


有什么办法可以解决这个问题吗?

你要找的是间接的

=VLOOKUP(B21,INDIRECT("F_" & "CCIII_CPI"), 2, FALSE)
基本上,间接获取表示范围的文本,并使Excel将其识别为范围


i、 e.
=间接(“A”&2)
将引用
A2

您也可以命名数组,然后通过其名称引用数组

例如: 您可以高亮显示Sheet1中的单元格A1:B5,然后右键单击并将“定义名称”作为数组1

然后在表2中,将A1:B5定义为阵列2

那么,您的Vlookup将是:

 =VLOOKUP(B21, Array1, 2, FALSE) 
要更改对sheet2数据的引用,只需将名称更改为array2即可

如果引用包含“&”以连接引用名称的两个独立部分,则需要使用间接

例如:

=VLOOKUP(B21, INDIRECT("Array" & B20), 2, FALSE)
在上述情况下,我们可以通过将单元格B20的值从1更改为2来更改数组引用(以Array1或Array2的形式完成引用)


最好的,是的,我意识到这一点。我只是想说得更详细一些,包括一些使用间接推理的额外理由。如上所述,当引用中使用另一个单元格值作为修改器时,最好使用间接。谢谢你澄清“吉他手”明白了。欢迎来到SO,谢谢!我很乐意帮忙