Вы можете использовать этот VBA для подключения базы данных Access в режиме только для чтения:
Sub ReadFromAccess() Dim cn As Object, rs As Object Dim intColIndex As Integer Dim DBFullName As String Dim TargetRange As Range DBFullName = "C:\Users\Username\Desktop\Sample.mdb" Application.ScreenUpdating = False Set TargetRange = Sheets("Sheet1").Range("A1") Set cn = CreateObject("ADODB.Connection") cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBFullName & ";" & "Persist Security Info=False;Mode=Read;" Set rs = CreateObject("ADODB.Recordset") rs.Open "SELECT * FROM Table Name", cn,, , adCmdText For intColIndex = 0 To rs.Fields.Count - 1 TargetRange.Offset(1, intColIndex).Value = rs.Fields(intColIndex).Name Next TargetRange.Offset(1, 0).CopyFromRecordset rs Application.ScreenUpdating = True On Error Resume Next rs.Close Set rs = Nothing cn.Close Set cn = Nothing On Error GoTo 0 Exit Sub End Sub
NB
- Путь к файлу C: \ Users \ Имя пользователя \ Desktop \ Sample.mdb и Sheets ("Sheet1"). Диапазон ("A1") можно редактировать.
- Вместо переменной DBFullName вы можете использовать путь к файлу C: \ Users \ Username \ Desktop \ Sample.mdb, как я показал в комментариях.
,