Господа!
Когда разделенная база данных содержит ссылку на одну базу с таблицами (все таблицы), то для линковке с ней использую следующий код:
Dim dbs As Database
Dim tdf As TableDef
Dim lngX As Long
Set dbs = CurrentDb
SysCmd acSysCmdInitMeter, "Открываю таблицы базы " & sBase, dbs.TableDefs.Count
lngX = 0
For Each tdf In dbs.TableDefs
If Len(tdf.Connect) > 0 Then
tdf.Connect = ";DATABASE=" & sBase – путь к таблице, формируется программно…
tdf.RefreshLink
End If
SysCmd acSysCmdUpdateMeter, lngX
Next tdf
MsgBox "Данные успешно подключены. Приятной работы!!!", vbOKOnly + vbInformation, "Подключение данных"
SysCmd acSysCmdUpdateMeter, dbs.TableDefs.Count
SysCmd (acSysCmdClearStatus)
dbs.Close |
Теперь ситуация следующая: несколько таблиц хранятся в одной базе, остальные в другой… Требуется как-то этот процесс автоматизировать, а то сейчас использую "ручной" метод, типа формирую обращение к каждой таблице методом
tdf = dbs.TableDefs("Phone") |
Наверно можно как-то создать 2 массива, где я просто напишу имена таблиц принадлежащих одной базе, а в другом массиве список других таблиц, а потом пробегусь по этим массивам и прилинкуюсь, т.е. заменю
For Each tdf In dbs.TableDefs
На
For Each tdfMassiv In MassivTable |
Может есть более дешевый способ автоматизации линковки таблиц из разных баз?