0
내 VBA 매크로에 dbf 파일을 읽으려고하고 데이터를 처리하고 선택된 워크 시트에 넣으려고 할 때 문제가 있습니다. 3001 오류 (잘못된 유형의 인수, 범위 또는 충돌)가 발생하기 때문에 붙어 있습니다.DBF (dBase) 파일 - Excel VBA에서 열고 변환하기
이것은 내 코드이며, 무엇이 잘못 될 수 있습니까?
FileToOpen = Application.GetOpenFilename _
(Title:="Please choose a file to import", _
FileFilter:="Excel Files *.dbf (*.dbf),")
''
If FileToOpen = False Then
MsgBox "Plik nie został wybrany.", vbExclamation, "Błąd!"
Exit Sub
Else
Dim conn As Object
Set conn = CreateObject("ADODB.Connection")
Dim rst As Object
Set rst = CreateObject("ADODB.Recordset")
iPos = InStrRev(FileToOpen, "\", , vbTextCompare)
Filepath = Left(FileToOpen, iPos)
Filename = Right(FileToOpen, iPos - 1)
MsgBox Filename & " " & Filepath
conn.Open "DRIVER={Microsoft dBase Driver (*.dbf)};" & "DBQ=" & Filepath
Debug.Print conn.ConnectionString
rst.Open "Select * From " & Filename, conn, adOpenStatic, adLockReadOnly, adCmdText
Do Until rst.EOF
Debug.Print rst.Fields(1).Value
rst.MoveNext
Loop
rst.Close
Set rst = Nothing
conn.Close
Set conn = Nothing
End If
는 또한 파일 형식을 확인하고 그것은 여전히 그것의 형식을 알 수 없다는 뜻대로 "DBT없이 파일"입니다 :> 어쩌면 내가 드라이버 ID를 변경해야합니까?