在两个表VBA之间创建连接列表

时间:2015-04-30 17:44:17

标签: vba join match analysis

下午好,

我仍然是VBA的新手,但我正在尝试创建一个循环,它能够筛选给定列中的一长串数据(在我的例子中,两个表都有一个公共标识符,系统ID)如果系统ID在一列中与另一个表中的列匹配,则会创建一个新表,该表将与两组数据关联的所有行组合成一行。

例如,如果我的数据如下所示:

表1 A栏,B栏,C栏|
   ID,姓名,生日

表2

A栏,B栏,C栏|

购买,金额,ID

我在表1和表2中都有相同的ID,对于每个匹配,我希望将与匹配相关联的所有行连接在一起。

这真的能让我通过组织信息加快速度,所以我不确定是否可能......欢迎任何想法!

1 个答案:

答案 0 :(得分:0)

因为excel不是像访问那样的数据库程序,所以你不能本身使用类似sql的连接。你必须编写自己的连接函数: (由于我没有安装MS Office,我只能给你伪代码)

for each-loop going through IDs of Table1

for each-loop going through IDs of Table2

  if(Table1.ID = Table2.ID) then
   copy data of Table1 into a new sheet
   copy data of Table2 into the same sheet, next to Table1 data

PS:我假设您使用excel是因为词汇表(列,工作表,...)