应用情景如下:
假设有一个Excel表格,其中数据为类似下面:
| 序号 | 地点 | Data1 | Data2 | …… | 
| 1 | Add1 | 100 | 1 | …… | 
| 2 | Add2 | 53 | 452 | …… | 
| …… | …… | …… | …… | …… | 
| 1000 | 地点1000 | 56 | 5823 | …… | 
另外一个表格类似下面:
| 地点 |  | 
| Add4 |  | 
| Add1 |  | 
| Add897 |  | 
| …… |  | 
|  |  | 
| Add2 |  | 
| Add765 |  | 
| Add8 |  | 
| …… |  | 
其中,要求把表格1中的数据,根据表格2中地点,找到对应的Data1,Data2等数据,并填充到表格2中对应列的后面。
一种方法是利用Lookup函数,把Add4后面的单元格,利用Lookup(B1, 表格1!$B2:B1001, 表格1!C2:C1001)就可以,然后在表格2中下拉一直填充到最后一行即可,对Data2等数据列类似操作。
上面的方法,不好横向填充(微软的Excel这点不好,要横向变动很麻烦)。
另外一种方法,是手动排序来实现,操作简单方便:
1:首先在表格2中增加一列序号,并按顺序填充,如下表:
| 地点 | 增加序号 | 
| Add4 | 1 | 
| Add1 | 2 | 
| Add897 | 3 | 
| …… | …… | 
|  |  | 
| Add2 | 543 | 
| Add765 | 544 | 
| Add8 | 545 | 
| …… | …… | 
然后把Add4到最后一个单元格选中,点【数据】→【排序】,按《地点》列排序。
同样操作,把表格1中的序号到最后一列选中,同样按地点排序,这样得到两个顺序一模一样的表格数据,然后把Data1到最后一列的数据全部复制,粘贴到表格2中的【增加序号】列后面即可,得到了同样的数据。
最后一步:在表格2中,把地点到最后一列的数据全部选中,再按照【增加序号】一列排序,恢复表格2原始的地点顺序,然后删除【增加序号】列,就搞定了。