我正在尝试在 Excel 中创建 VLOOKUP 公式,但是表格数组可能位于多个不同的工作表中。
例如,我有这个公式
=Vlookup(a1, ‘[Datafile.xlsx]worksheetapples’!$A1:F500,3,False)
这在单一场景中工作得很好,但这worksheetapples
不是我想要查找的唯一工作表,我有worksheetbananas
并且worksheetpears
有没有办法传递工作表来引用?
编辑:我试图避免编写一个IF
检查值然后使用相关 VLOOKUP 的公式。传入工作表的名称要比检查 A1 是否为苹果、对苹果执行 VLOOKUP、如果 A1 是梨则对梨执行查找等要容易得多
答案1
尝试使用间接,例如
=Vlookup(a1, INDIRECT(CONCATENATE("‘[Datafile.xlsx]",B1,"'!$A1:F500")),3,False)
其中 B1 包含工作表名称。
答案2
使用 INDIRECT 函数。例如,将 [Datafile.xlsx]worksheetapples'!$A1:$A10 作为文本放在 A1 中,将 =SUM(INDIRECT(A1)) 放在 A2 中。检查 A2 值会发生什么情况!