Hej Det går inte att importera från Excel till en existerande tabell med TransferSpreadsheet om man inte har "hasfieldnames:=True". Tänkbar workaround är att importera till en temporär tabell och sedan köra en tilläggsfråga till rätt tabell. Eller kanske inte.... Den här koden kan jag köra obegränsat antal gånger i Access 2000 och Access 2002:Importera från Excel till Access
Jag har stött på ett problem med en import av ett Excelark till Access. Jag använder följande kod:
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel97, "KontaktRawData", Filename, False, "Blad1!A11:M17"
Jag har tidigare användt samma kommando men då utan att specificera ett visst antal celler för import och då var även variablen headers true. Exempel nedan:
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel97, "ImpRawData", Filename, True
Nu vill jag alltså bara importera de värden som finns i Excelbladet till tabellen KontaktRawData där det finns 13 fält med korrekt datatyp.
Är det någon annan som stött på detta problem vid Excelimport?Sv: Importera från Excel till Access
/ÅsaSv: Importera från Excel till Access
Jag testade att byta ut tabellnamnet KontaktRawData mot KontaktRawData2 som är en ickeexisterande tabell. När jag testade funkade det alldeles utmärkt och det skapades en tabell som hette KontaktRawData2 och den innehöll den data jag ville åt. Men när jag sedan provade en gång till fungerde det inte. Jag raderade tabellen KontaktRawData2 mellan körningarna.
Här är min kodrad som den ser ut nu:
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel97, "KontaktRawData2", Filename, False, "Blad1!A11:M17"
Tabellen KontaktRawData2 existerar inte.
Mvh
Niclas Sv: Importera från Excel till Access
Sub ImporteraNu()
Dim sFileName As String
Dim sTmpTable As String
Dim sTable As String
sFileName = "D:\Projekt\Test\Bok1.xls"
sTmpTable = "tblTmp"
sTable = "Tabel4"
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel97, sTmpTable, _
sFileName, False, "Blad1!A1:C4"
With CurrentDb
.QueryDefs("AddImportedRows").Execute
.TableDefs.Delete sTmpTable
End With
End Sub
Funkar det inte hos dig?