https://toster.ru/q/394895 - любой драйвер на выбор :)
К таблице Excel лучше так не подключаться (нельзя чтобы файл был занят).
Option Explicit
'123456789012345678901234567890123456h8nor@ya567890123456789012345678toster56789
Sub TestADO()
Dim Conn As Object, Rec As Object
On Error GoTo ErrMsg ' Создание подключения через драйвер
Set Conn = CreateObject("ADODB.Connection") ' Открываем Connection
Conn.ConnectionTimeout = 5
Conn.Mode = 1 ' 1 = adModeRead, 2 = adModeWrite, 3 = adModeReadWrite
Str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & $dbPath & ";"
' Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""
'Str = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & $dbPath & ";"
'Str = Str & "Jet OLEDB:Engine Type=6;" ' Тип подключения (не используется)
Str = Str & "Jet OLEDB:Encrypt Database=False;"
Str = Str & "Jet OLEDB:Database Password=" & $passDB & ";"
' Системная таблица Access 2003 (файлы *.mdb)
'Str = Str & "Jet OLEDB:System database=" & $mdwPath
Conn.Open ConnectionString:=Str ', UserId:="$admin", Password:=""
Debug.Print "Conn.State="; Conn.State
Set Rec = CreateObject("ADODB.Recordset") ' Создаём RecordSet для чтения данных
' ...
Set Rec = Nothing: Set Conn = Nothing
On Error GoTo 0: Exit Sub
ErrMsg:
MsgBox Str & String(2, vbCrLf) & "Provider=" & Conn.Provider, _
vbOKOnly + vbCritical, "Error: " & Err.Number & ", AppVer: " _
& Val(Application.Version): Set Rec = Nothing: Set Conn = Nothing
End Sub