Excel 搜索并匹配不同电子表格的日期列,以将匹配的行复制到第一行

Excel 搜索并匹配不同电子表格的日期列,以将匹配的行复制到第一行,excel,vba,Excel,Vba,我在编码方面或多或少是新手,只是有一些Java方面的经验。 为此,我认为最好使用VBA: 我有两张Excel表格。其中一个是关于特定商店营业额的信息,另一个是关于每天天气的信息。为了找到相关性,我想加入他们。我的目标是使用表1的日期列(见下文),在表2中查找匹配的日期(因为这在表2中是唯一的),并从表1的表2中复制整个匹配列。我想为表1的每一行自动执行此操作,以便在该表中包含所有相关数据。 表1: 日期、店铺ID、产品ID、营业额 2016年1月1日14、5、15.000美元 2016年1月2日

我在编码方面或多或少是新手,只是有一些Java方面的经验。
为此,我认为最好使用VBA: 我有两张Excel表格。其中一个是关于特定商店营业额的信息,另一个是关于每天天气的信息。为了找到相关性,我想加入他们。我的目标是使用表1的日期列(见下文),在表2中查找匹配的日期(因为这在表2中是唯一的),并从表1的表2中复制整个匹配列。我想为表1的每一行自动执行此操作,以便在该表中包含所有相关数据。

表1:
日期、店铺ID、产品ID、营业额
2016年1月1日14、5、15.000美元
2016年1月2日,14日,5日,2000美元
2016年1月2日,14、6、5.000美元
2016年1月3日,14,5,3000美元
2016年1月3日,14,1,4.000美元
2016年1月4日,第14、2、1.000美元

表2:
StationId、日期、日照、平均温度
3,01.01.2016,4,17
3,02.01.2016,5,19
2016年1月3日,6日,12日
2016年1月3日,4日,14日

我怎么能意识到这一点


这是我的第一个项目,我将非常感谢任何帮助。

考虑以下几点:

第1页:

第2页

在表1中,添加列:StationID、Sunshing和AvgTemperature标题。 在单元格E1中,键入use
INDEX
以获取单元格中的值。公式应如下所示:

=INDEX(Sheet2!$A:$D,MATCH(Sheet1!$A2,Sheet2!$B:$B,0),MATCH(Sheet1!E$1,Sheet2!$A$1:$D$1,0))
然后拖动公式以填充其余单元格

之所以使用
INDEX
而不是
VLOOKUP
是因为查找值位于第2列<代码>索引将允许您在创建参考点后查找数据,在这种情况下,您需要将Sheet1列a中的日期与Sheet2列B中的日期匹配以获取行号,然后将Sheet1行1中的标题与Sheet2中的标题匹配

请注意,如果您更改任何工作表中的标题名称,您将得到一个
#REF错误


我希望这有帮助。

一个简单的VLOOKUP公式就可以了。为什么是vba?