J'ai plusieurs fichiers .xls que je n'arrive pas à ouvrir dans Excel car ils sont trop gros. J'ai essayé de les importer dans Access 365, mais obtenir l'erreur Accès impossible d'accéder à l'information dans le fichier. J'ai lu les conseils de plusieurs forums ce matin mais les seules suggestions ne sont pas réalisables car elles nécessitent l'ouverture du fichier et l'enregistrement au format .xlsx, ce que je ne peux pas faire car comme indiqué plus haut je ne peux pas ouvrir le fichier. Tout conseil serait apprécié.Importer des fichiers .xls dans Access 365
Répondre
Comment pouvez-vous avoir un fichier Excel que vous ne pouvez pas ouvrir dans Excel? Vous devez avoir utilisé Excel, à un moment donné, pour créer le fichier. La seule limite, comme je le sais, est la RAM sur la machine avec laquelle vous travaillez.
Pouvez-vous essayer le script suivant?
Sub Import()
Dim strPathFile As String, strFile As String, strPath As String
Dim strTable As String
Dim blnHasFieldNames As Boolean
' Change this next line to True if the first row in EXCEL worksheet
' has field names
blnHasFieldNames = False
' Replace C:\Documents\ with the real path to the folder that
' contains the EXCEL files
strPath = "C:\Documents\"
' Replace tablename with the real name of the table into which
' the data are to be imported
strTable = "tablename"
strFile = Dir(strPath & "*.xls")
Do While Len(strFile) > 0
strPathFile = strPath & strFile
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _
strTable, strPathFile, blnHasFieldNames
' Uncomment out the next code step if you want to delete the
' EXCEL file after it's been imported
' Kill strPathFile
strFile = Dir()
Loop
End Sub
Si Access ne peut pas le gérer, et je trouve cela difficile à croire, vous pouvez utiliser SQL Server pour faire le travail.
http://www.accessmvp.com/KDSnell/EXCEL_Import.htm
Select * into SQLServerTable FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=D:\testing.xlsx;HDR=YES', 'SELECT * FROM [Sheet1$]')
http://www.ashishblog.com/importexport-excel-xlsx-or-xls-file-into-sql-server/
Ou ... utiliser R pour cette tâche.
library(xlsx)
file <- system.file("tests", "test_import.xlsx", package = "xlsx")
res <- read.xlsx(file, 1) # read first sheet
head(res[, 1:6])
http://www.sthda.com/english/wiki/r-xlsx-package-a-quick-start-guide-to-manipulate-excel-files-in-r
Si aucune de ces options ne fonctionne, je dirais que le fichier Excel est probablement corrompu, et c'est un problème tout à fait différent.
Salut. Merci pour tout ce qui précède. RAM est le problème, il semble que l'ordinateur portable de travail ne suffit pas. Les fichiers sont des téléchargements du système à partir de Oracle db, ils n'ont donc pas été créés par un utilisateur. Mais le problème que j'avais en utilisant l'accès pour gérer les fichiers semblait être lié au fait que les fichiers étaient .xls et l'accès a dit qu'il ne pouvait pas lire les données. –