- Код: Выделить всё
....
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
Dim RST As New ADODB.Recordset
With cn
.CursorLocation = adUseClient
.Mode = adModeRead
.Provider = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = "Data Source=" & Left(OpenFile.lpstrFile, InStr(OpenFile.lpstrFile, vbNullChar) - 1) & ";Mode=Read; Extended Properties=""Excel 8.0;HDR=No;IMEX=1"""
.Open
End With
Set RST.ActiveConnection = cn
RST.Open "SELECT F1, F2 , F4, F5, F8, F12, F13 FROM [Sheet1$] where f2='/06'", cn, adOpenStatic, adLockReadOnly
...
При запуске программы если указанный файл открыт в Excel, то все работает нормально. А если закрыт, то выскакивает ошибка "Внешняя таблица не имеет предполагаемый формат"!
В чем дело?
Что надо сделать,чтобы таблица Excel считывалась и при закрытом файле?