在不同的Excel电子表格中查找数据并将信息返回到当前工作表

时间:2015-01-07 17:34:39

标签: excel

在excel中,我想创建一个快速查找表。我有各种工作表,由公司命名,每张纸上有12个月的数据,横向数​​月。我希望用户能够在A1中输入与工作表名称(公司名称)对应的值。在单元格A2中,它们将进入一个月。该公式将找到该工作表,查找月份并在其下方的单元格中返回一个值。接近这个公式的最佳方法是什么?

2 个答案:

答案 0 :(得分:0)

您可以使用以下公式:

=HLOOKUP(A2,INDIRECT("["&A1&"]Sheet1!$B$2:$C$3"),2,FALSE)

让我分解一下。

= HLOOKUP(...是一个函数,它将根据单元格A1和A2中的用户输入找到您要查找的值。这是 H orizo​​ntal LOOKUP

A2 ...是用户输入的月份,也是HLOOKUP公式将在指定公司工作表上搜索的月份。

INDIRECT(“[”& A1&“] ...是一个允许公式根据在单元格A1中输入的公司工作簿动态更改的函数。

Sheet1!$ B $ 2:$ C $ 3“)...需要根据公司工作表的名称进行调整。例如,许多人将您的工作表命名为2014年,因此您将更改”Sheet1“对于'2014'。此外,范围$ B $ 2:$ C $ 3在您的示例中很可能会有所不同。确保调整此范围,以便范围中的左上角最左边的单元格是第一个月和最右下角cell是您希望返回的最后一个月的数据值。

,2 ...是您要返回的公司工作表行(基于您在上一步中给出的范围)。

,FALSE)...告诉HLOOKUP函数寻找完全匹配。

提示 - 确保在单元格A1和A2中输入的值与它们在工作簿名称和月份字段中显示的值完全相同。请务必包含工作簿扩展名.xlsx等

答案 1 :(得分:0)

以下是您要找的内容我将为您提供公司文件的示例,并继续使用

第一个公司名称是comp1 Company1 file

第二个公司名称为comp2 Company2 file

主文件如下所示 enter image description here

公式是  =HLOOKUP(B2,INDIRECT(CONCATENATE("[",A2,".xlsx]sheet1!$A$1:$L$2")),2,FALSE)