Объединение данных из нескольких связанных таблиц excel в главную таблицу доступа

У меня есть несколько листов Excel с точно такими же заголовками, которые я связал в Access. У меня проблема со слиянием всех данных из файлов excel в одну таблицу Мастер-доступа, сохраняя при этом таблицу Мастер-доступа обновленной, когда люди редактируют информацию на листах Excel.
Обычно используется запрос, но может ли база данных Access обновлять данные самостоятельно?

23
задан Andrew Tan
07.12.2022 10:34 Количество просмотров материала 3599
Распечатать страницу

1 ответ

самый простой способ я могу предложить вам обновить запрос.

Так как ваши листы Excel идентичны доступа к таблице базы данных, то запрос на обновление будет работать быстрее, и ваш лист Excel будет отображаться как любая прикрепленная таблица в Access.

Я надеюсь, что у вас нет пустой строки между заголовками и данными в Excel.

другое решение-код VBA, вы можете попробовать это.

Private Sub UpdateAccess()

Dim db As Database
Dim rs As RecordSet
Dim sql As String
Dim dbLocation As String

dbLocation = Workbook.Path & "\database\data.accdb"
Set db = OpenDatabase(dbLocation)
sql = "Select * FROM [Main Table]"
Set rs = db.OpenRecordSet(sql, dbOpenSnapshot)

If Not rs.EOF Then
   Worksheets("Sheet1").Range("A1").CopyFromRecordset rs
End If

rs.Close
Set rs = Nothing
db.Close
Set db = Nothing

End Sub

NB: этот код VBA будет работать успешно, когда слияние является безусловным.

0
отвечен Rajesh S 2022-12-08 18:22

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх