2016-11-16 5 views
3

У меня есть 2 файла базы данных доступа. Номер базы данных. 1 находится в моем компьютере и в базе данных нет. 2 находится в общей сетевой папке.Вставьте данные формы доступа MS в другую таблицу Access

Я создаю форму в базе данных 1 (в моем компьютере), который вставляет данные формы в таблицу «Tbl_Requests» со следующим VBA код:

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

ответ

1

Link TableB из DB2 в DB1.

Связанная таблица может использоваться (для большинства случаев использования) как локальная таблица, ваш код работает без изменений, кроме, быть может, имени таблицы.

+0

может я сделать это с помощью VBA кода и таких, как выше коды вставки записи в таблицу B? –

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 
Смежные вопросы