将MS Access表单数据插入另一个Access表

时间:2016-11-16 12:22:19

标签: database vba ms-access access-vba

我有2个Access数据库文件。数据库号1是在我的电脑和数据库中没有。 2位于网络共享文件夹中。

我在数据库1(在我的计算机中)创建一个表单,该表单使用以下VBA代码将表单数据插入表“Tbl_Requests”:

Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("Tbl_Requests")
With rst
.AddNew
.Fields("IDLeave") = Me.Text_IDLeave.Value
.Fields("PersonalCode") = Me.Text_CP.Value
.Fields("FullName") = Me.Text_FullName.Value
.Fields("RequestDate") = Me.Text_RequestDate.Value
.Fields("Section") = Me.Text_Section.Value
.Fields("SuperName") = Me.Text_SuperName.Value
.Fields("LeaveRemained") = Me.Text_LeaveRemained.Value
.Fields("Des") = Me.Text_Des.Value
.Fields("LeaveDate") = Me.Combo_LeaveDate.Value
.Fields("Email") = Me.Text_Email.Value
.Update
End With

现在我想将相同的数据表单保存到网络中的数据库2中的另一个表中。我怎么能这样做?

Picture Of Question

2 个答案:

答案 0 :(得分:3)

只需关闭 CurrentDb 对象并指向联网数据库文件:

Dim db As Database
Dim rst As Recordset 

Set db = OpenDatabase("C:\Path\To\Database.accdb")
Set rst = db.OpenRecordset("Tbl_Requests") 

With rst 
   .AddNew 
   .Fields("IDLeave") = Me.Text_IDLeave.Value 
   .Fields("PersonalCode") = Me.Text_CP.Value 
   .Fields("FullName") = Me.Text_FullName.Value 
   .Fields("RequestDate") = Me.Text_RequestDate.Value 
   .Fields("Section") = Me.Text_Section.Value 
   .Fields("SuperName") = Me.Text_SuperName.Value 
   .Fields("LeaveRemained") = Me.Text_LeaveRemained.Value 
   .Fields("Des") = Me.Text_Des.Value 
   .Fields("LeaveDate") = Me.Combo_LeaveDate.Value 
   .Fields("Email") = Me.Text_Email.Value 
   .Update 
End With

rst.Close
db.Close

Set rst = Nothing
Set db = Nothing

答案 1 :(得分:1)

Link TableB从DB2到DB1。

链接表可以像本地表一样使用(对于大多数用例),代码可以不做任何更改,除了表名。