Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Erreur d’extraction d’un seul fichier dans une boucle

thomaths

XLDnaute Nouveau
Bonjour,

Je rencontre un problème en faisant tourner une macro qui extrait à la suite grâce à une boucle les données de plusieurs centaines de fichiers à la suite, dont les chemins d’accès sont renseignés en colonne les uns à la suite des autres dans un onglet Excel spécifique.
J’utilise la méthode ADO et la partie du code qui beugue pour les fichiers .xlsx est la suivante :
Set Source = New ADODB.Connection
Source.Open “Provider=Microsoft.ACE.OLEDB.12.0;” & _
“Data Source” & Fichier & “;Extended Properties=“”Excel 12.0 Xml;HDR=No;””;”

J’ai l’erreur “Run time error -2147467259 (80004005) Invalid Argument” qui apparaît sans aucune raison.
Le problème apparaît toujours lorsque ma boucle atteint la ligne 89, ce n’est pas lié au chemin d’accès renseigné dans cette ligne car si je mets le chemin ailleurs, celui-ci fonctionne très bien. Ce n’est pas non plus lié au code en lui même selon moi car celui-ci fonctionne pour toutes les autres lignes.

Auriez-vous une idée de ce qu’il se passe et comment corriger ce problème ?

Merci d’avance pour votre aide.
Thomas
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

A la ligne 89 ou au 89ème fichier?

Si c'est au 89ème fichier vérifiez bien que c'est un fichier excel avec une extension .xlsx et non .xls
Sinon je ne vois pas.
A+
 

thomaths

XLDnaute Nouveau
Bonjour,

En fait j’ai mes fichiers indiqués par leur chemin d’accès les uns à la suite des autres. Donc la 89e ligne parcourue par la macro contient le chemin d’accès du 89e fichier. Je suis absolument sûr du chemin, d’autant plus qu’en inversant ce chemin avec celui d’un autre fichier c’est toujours la ligne 89 qui plante...
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Avez-vous vérifier que votre macro ferme correctement les connexions et détruit la variable source avant de la recréer?
Idem pour tous vos objets recordset éventuels.

Sinon vous pouvez installer et utiliser le complément PowerQuery qui fait ce genre de chose très bien. A partir des versions 2016 il est intégré à excel pour 2010 et 2013 il faut l'installer. lien de la page de téléchargement. Allez voir cette discussion : https://www.excel-downloads.com/threads/resolu-compilation-donnees-inter-fichier.20035392/

Bonne chance dans vos recherches
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…