Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

如何导入另一数据库中的表?急!!!

cwzj3807  发表于:2017-04-17 15:02:30  
复制

求助各位老师:
我有两个Access文件:“数据库A”和“数据库B”,现在我需要在“数据库B”中操作,将“数据库A”中的表全部导入到“数据库B”中,恳请老师给出代码!谢谢!
注:链接的代码我已经学着写好了。附件

 

Top
朱先生 发表于:2017-04-17 23:27:55

 DoCmd.TransferDatabase acImport, "Microsoft Access", "路径\数据库A.MDB", acTable, "表1", "表名", False

导了个表1



cwzj3807 发表于:2017-04-18 21:21:41

回  朱先生 老师:

问题是“数据库A”是有秘密的呀,密码是“111111”。如何实现用代码输入呀,肯请老师指导,谢谢!



朱先生 发表于:2017-04-18 21:56:52

Dim dbs As Object
Set dbs = DBEngine.Workspaces(0).OpenDatabase("路径\数据库A.mdb", _
False, False, ";pwd=111111")
DoCmd.TransferDatabase acImport, "Microsoft Access", "路径\数据库A.mdb", _
acTable, "表1", "A1", False

 DoCmd.TransferDatabase acImport, "Microsoft Access", "路径\数据库A.mdb", _
acTable, "表2", "A2", False

导入了表1、表2,表名为A1、A2

 



cwzj3807 发表于:2017-04-19 07:47:42

非常感谢 朱先生 老师的指点!学习中。

 

 

 



cwzj3807 发表于:2017-04-19 08:07:11
回  朱先生 老师:

再次求教老师,如果 “数据库A” 中的表很多,我想用循环的办法来导入,代码又该如何写呢?恳请老纸指点,谢谢!

 

 

 



朱先生 发表于:2017-04-19 21:46:07

Dim dbs As Object
Set dbs = DBEngine.Workspaces(0).OpenDatabase("C:\Users\acer\Desktop\数据库A.mdb", _
False, False, ";pwd=111111")
For I = 1 To 4
DoCmd.TransferDatabase acImport, "Microsoft Access", "C:\Users\acer\Desktop\数据库A.mdb", _
acTable, "表" & I, "A" & I, False
Nex

 

C:\Users\acer\Desktop 是路径

数据库A中有4个表,分别为表1、表2、表3、表4,循环4次,导入的表名分别为A1、A2、A3、A4



cwzj3807 发表于:2017-04-20 07:33:09
非常感谢 朱先生 老师的指点!学习中。

cwzj3807 发表于:2017-04-21 09:02:13
回  朱先生 老师:

再次求教老师,如果 “数据库A” 中众多表的名称末尾没有数字而是纯字符(如:工资表、考情表、材料表、费用表等),那又该怎样用代码循环的办法来导入呢?恳请老师指点,谢谢!




MDZZ 发表于:2017-04-21 11:09:10
Dim dbs As Object
Dim tbl As Object
Set dbs = DBEngine.Workspaces(0).OpenDatabase("C:\Users\acer\Desktop\数据库A.mdb", _
False, False, ";pwd=111111")
For Each tbl In dbs.TableDefs
If Left(tbl.Name, 4) <> "MSys" Then
DoCmd.TransferDatabase acImport, "Microsoft Access", "C:\Users\acer\Desktop\数据库A.mdb", _
acTable, tbl.Name, tbl.Name, False
End If
Next


cwzj3807 发表于:2017-04-21 16:58:20

谢谢 MDZZ 老师的指点!学习中。

 

 

 



cwzj3807 发表于:2017-04-22 10:10:08

再次求教  MDZZ  老师:

如果是链接“数据库A”的所有表,下面的代码该怎样修改呢?谢谢!

Dim dbs As Object
Dim tbl As Object
Set dbs = DBEngine.Workspaces(0).OpenDatabase("C:\Users\acer\Desktop\数据库A.mdb", _
False, False, ";pwd=111111")
For Each tbl In dbs.TableDefs
If Left(tbl.Name, 4) <> "MSys" Then
DoCmd.TransferDatabase acImport, "Microsoft Access", "C:\Users\acer\Desktop\数据库A.mdb", _
acTable, tbl.Name, tbl.Name, False
End If
Next

 



朱先生 发表于:2017-04-22 11:31:37
Dim dbs As Object
Dim tbl As Object
Set dbs = DBEngine.Workspaces(0).OpenDatabase("C:\Users\acer\Desktop\数据库A.mdb", _
False, False, ";pwd=111111")
For Each tbl In dbs.TableDefs
If Left(tbl.Name, 4) <> "MSys" Then
DoCmd.TransferDatabase acLINK, "Microsoft Access", "C:\Users\acer\Desktop\数据库A.mdb", _
acTable, tbl.Name, tbl.Name, False
End If
Next


cwzj3807 发表于:2017-04-22 12:42:33
谢谢 MDZZ 老师的指点!学习中。

cwzj3807 发表于:2017-04-24 09:37:46
再次求教  MDZZ  老师:

假如我的access中有一张名为“AAA”的表,如果我要用代码判断它是否存在,其代码该如何写呢?谢谢!

 

 

 

 

 

 



cwzj3807 发表于:2017-04-24 11:00:41
再次求教  朱先生  老师:

假如我的access中有一张名为“AAA”的表,如果我要用代码判断它是否存在,其代码该如何写呢?谢谢!



总记录:15篇  页次:1/1 9 1 :