Excel公式 - 根据当前工作表中的列从另一个Excel工作表中获取值

时间:2016-03-01 22:57:12

标签: excel excel-formula excel-2010

我在Excel中有两张表,摘要和数据。数据表通过SQL Server连接,摘要表汇总了表中的数据。

摘要表

+------+--------------+
| ID   | Month - Year | 
+------+--------------+
|    1 |              |
|    2 |              |     
|    3 |              |  
|    4 |              |   
|    5 |              |
+------+--------------+

注意:我使用公式从数据表中获取不同的ID。 ID列为A列,Month - Year列为B列.ID 1为A2 square。

数据表

+------+--------------+
| ID   | Month - Year | 
+------+--------------+
|    1 |  Oct 2014    |
|    2 |  Dec 2014    |    
|    3 |  Oct 2016    | 
|    4 |  Jan 2016    |  
|    5 |  Nov 2015    |
|    6 |  Jul 2015    |  
|    7 |  Jan 2016    |  
|    8 |  Nov 2015    |
|    7 |  Jan 2016    |  
|    8 |  Nov 2015    |
+------+--------------+

注意:ID 1在A2平方,月 - 年在B2平方。

如何根据ID列(在摘要表中)编写摘要月 - 年列的公式以获取每个月 - 年(来自数据表)?

预期结果:

+------+--------------+
| ID   | Month - Year | 
+------+--------------+
|    1 |  Oct 2014    |
|    2 |  Dec 2014    |    
|    3 |  Oct 2016    | 
|    4 |  Jan 2016    |  
|    5 |  Nov 2015    |
|    6 |  Jul 2015    |  
|    7 |  Jan 2016    |  
|    8 |  Nov 2015    |
+------+--------------+

数据透视表中的等效预期结果(包含行月 - 年和ID):

-Nov 2015
--5
--8
-Jan 2016
--4
--7
-Jul 2015
--6
-Oct 2014
--1
-Dec 2014
--2
-Oct 2016
--3

努力: = VLOOKUP(A2,数据$ A $ 2:$ A $ 500,2,FALSE)

1 个答案:

答案 0 :(得分:1)

=VLOOKUP(A2,Data!$A$2:$B$500,2,FALSE)

您尝试的公式需要包含表数组变量中的列。

此外,数组必须在表数组的第一列中包含查找值。

我更喜欢使用INDEX MATCH组合,它删除了搜索列的约束,它是表数组中最右边的列。使用您为范围指定的值,它将是:

=INDEX(Data!$B$2:$B$500,MATCH(A2,Data!$A$2:$A$500,0))

有关VLOOKUP的更多信息,您可以在以下位置获取信息: https://support.office.com/en-us/article/VLOOKUP-function-0bbc8083-26fe-4963-8ab8-93a18ad188a1