请问EXCEL如何用VBA将同一工作簿内的多个工作表的内容导入至ACCESS的一个表中

假设有如下三个表
表1

表2

表3

我想将以上三个表利用EXCEL的VBA导入至ACCESS数据库的一个新建的表中
数据结构如下图所示

同一个表的数据在同一行
字段为3个表的字段去掉重复值
请问代码该如何写?
最近工作很忙,可能很晚才能采纳
献上200分,希望有大神能解答。

Sub ttt()
Dim conn    
    Set conn = CreateObject("adodb.connection")
    conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Test.mdb"
    conn.Open    
    conn.Execute "insert into 表名(A,B,C) select * from [Excel 8.0;DataBase=" & ActiveWorkbook.FullName & "].[表1$]"
    conn.Execute "insert into 表名(B,D,E) select * from [Excel 8.0;DataBase=" & ActiveWorkbook.FullName & "].[表2$]"
    conn.Execute "insert into 表名(A,D) select * from [Excel 8.0;DataBase=" & ActiveWorkbook.FullName & "].[表3$]"
    conn.Close
    Set conn = Nothing    
End Sub

以上代码写在excel中,

E:\Test.mdb为access数据库完整路径,“表名”为access目标表名

代码执行3次sql命令将3个表导入

追问

谢谢,看了你的代码我已经有思路了
先用字典提取所有分表的不重复字段
再创建表,写入所有字段
然后遍历每一个工作表,分别提取各表的字段,写入SQL语句

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-10-21
字典,按顺序填充。
相似回答