2015-01-26 3 views
0

Я начинаю с VBA. Пожалуйста помоги. У меня есть база данных с именем «Мастер», сохраненная в общей сетевой папке, и в ней есть таблица с именем «logs». У меня мало пользователей, у которых разная база данных с таблицей «журналы», и эта структура таблицы похожа на таблицу «log» в базе данных «Мастер». Эти пользователи ежедневно вносят записи в таблицу базы данных «Журналы». Я хочу, чтобы в базе данных «Мастер» я создавал таблицу с именем «UserDb», которая будет содержать адресный путь для всех файлов базы данных пользователей, и я создам форму с помощью кнопки «Синхронизация». Мне нужно, чтобы как только я нажму кнопку «Синхронизация», он должен прочитать путь базы данных пользователя из таблицы «UserDb» и вставить все записи сегодняшней даты из всех таблиц базы данных пользователя «журналы» в «Мастер» Msgstr "журналы базы данных". В столбцах столбцов «Журналы» имена пользователей, приложения, TeamName, StartTime, StopTime, LoginDate.Вставить данные из нескольких баз данных в один

+0

Я настоятельно рекомендую вам ознакомиться с этим: http://support.microsoft.com/kb/257819 –

+0

Какая база данных? MS Access? –

+0

Yess это MSAccess. – user3786406

ответ

0

Вот то, что вы можете начать с:

Function ConToDataBase(DBPath As String) As Variant 
Dim Con As ADODB.Connection 
Dim Rs As ADODB.Recordset 
Dim SQL As String 
SQL = "SELECT * FROM Logs" 
Set Con = New ADODB.Connection 
With Con 
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & DBPath & ";" 
.Open 
End With 
Set Rs = New ADODB.Recordset 
Rs.Open SQL, Con 
Dim Var As Variant 
Var = Rs.GetRows 
ConToDataBase = Var 
Set Rs = Nothing 
Con.Close 
End Function 

Убедитесь, чтобы добавить ссылку на Microsoft ActiveX Objects 2.8 Инструменты> Ссылки так что вы можете объекты ADOdb.

Функция вернет вариант, содержащий таблицу журналов. Вы можете взять его оттуда.

Смежные вопросы