Здравствуйте, господа, дамы, товарищи!
Пытаюсь перебросить данные из базы DBF в MDB, на команде DoCmd.TransferDatabase выходит ошибка:
"Аргументы имеют неверный тип, выходят за пределы допустимого диапазона или вступают в конфликт друг с другом."
Может кто в курсе как исправить? Вот код (закоментированные строки - второй вариант, ошибка та же)
Imports System.Data.OleDb
Imports Microsoft.Office.Interop
Module Module1
Sub main()
Dim cn As New ADODB.Connection()
Dim str, tmpTN, Tabs(2) As String
Dim DBpath As String = My.Application.Info.DirectoryPath & "\pc"
str = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & My.Application.Info.DirectoryPath & "\GeoNet.mdb;"
'str = "Provider=VFPOLEDB.1;Data Source=" & DBpath & ";Extended Properties=dBASE IV;User ID=Admin;Password=" & """" & """" & ";"
Tabs(0) = "KO.DBF"
Tabs(1) = "KP.DBF"
Tabs(2) = "UC.DBF"
cn.ConnectionString = str
cn.Open()
For i = 0 To Tabs.Length - 1
While System.IO.File.Exists(DBpath & "\" & Tabs(i)) = False
System.Threading.Thread.Sleep(1000)
End While
tmpTN = Replace(Tabs(i), ".DBF", "", , , CompareMethod.Text)
'cn.DoCmd.TransferDatabase(Access.AcDataTransferType.acExport, "Microsoft Access", My.Application.Info.DirectoryPath & "\GeoNet.mdb", Access.AcObjectType.acTable, tmpTN, tmpTN & "i", False)
cn.DoCmd.TransferDatabase(Access.AcDataTransferType.acImport, "dBASE IV", DBpath & "\", Access.AcObjectType.acTable, tmpTN, tmpTN & "i")
Next
End
End Sub
End Module
Ответить
|