Ich habe ein Prozedur (s.u.), die Daten aus einer vorher gewählten Access Datei (GetOpenFileName) nach Excel importiert. Klappt auch alles super, solange die Access Datei im Verzeichnis "Eigene Dateien" ist (unabhängig vom Ort der Excel Datei!).
Sobald aber die Access Datei in einem anderen Verzeichnis, oder einem Unterverzeichnis von "Eigene Dateien" ist, kommt die Fehlermeldung "Typen unverträglich" (Laufzeitfehler 13) (mit Markierung von der With-Anweisung bis "Range("A1"))" ... siehe unten).
Hilfe! und Danke,
Dirk
___________________________________________________
Sub Import ()
datei = Application.GetOpenFilename("FWDWin-Dateien (*.mdb), *.mdb")
'Import "Comments"
Sheets("Comments").Select
With ActiveSheet.QueryTables.Add(Connection:=Array( _
"OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=" & datei & ";Mode=Share Deny Write;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLED" _
, _
"B:Database Password="""";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:G" _
, _
"lobal Bulk Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=F" _
, _
"alse;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False" _
), Destination:=Range("A1"))
.CommandType = xlCmdTable
.CommandText = Array("Comments")
.Name = "Kommentar Import"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = False 'hier ok
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.SourceDataFile = " & datei & "
.Refresh BackgroundQuery:=False
End With
End Sub