boulfaledjo
XLDnaute Nouveau
Bonjour,
Je souhaite ouvrir des fichiers .txt portant le nom 1.txt, 2.txt, 4.txt...
Pour celà, j'ai créé une boucle for... next.
Mais je bloque car il peut manquer des fichiers et Excel m'affiche alors l'erreur '1004'.
J'ai essayé de gérer les erreurs avec les instructions on error goto... seulement ça ne gère qu'une erreur (problème déjà posé dans le forum) et après avoir consulté le forum, ceci apparait comme étant une mauvaise solution. (Il faut mieux résoudre les erreurs que les contourner... jusque là ok!)
Mais je n'arrive à écrire la condition, "si on peut ouvrir le classeur, alors lancer les instructions"
Ma macro: (simplifiée)
Sub transfert()
dim chemin as string, name as string, i as integer
chemin = "C:\...\
name = ".xls"
For i = 1 to 100
Workbooks.OpenText chemin & i & name, , 1, xlDelimited, , , , True
mes instructions
next i
End sub
J'ai vu plusieurs personnes ayant le même type de problème mais aucune réponse n'a pu m'aider à résoudre ce problème...
Si quelqu'un a la solution??!! Merci d'avance!
Je souhaite ouvrir des fichiers .txt portant le nom 1.txt, 2.txt, 4.txt...
Pour celà, j'ai créé une boucle for... next.
Mais je bloque car il peut manquer des fichiers et Excel m'affiche alors l'erreur '1004'.
J'ai essayé de gérer les erreurs avec les instructions on error goto... seulement ça ne gère qu'une erreur (problème déjà posé dans le forum) et après avoir consulté le forum, ceci apparait comme étant une mauvaise solution. (Il faut mieux résoudre les erreurs que les contourner... jusque là ok!)
Mais je n'arrive à écrire la condition, "si on peut ouvrir le classeur, alors lancer les instructions"
Ma macro: (simplifiée)
Sub transfert()
dim chemin as string, name as string, i as integer
chemin = "C:\...\
name = ".xls"
For i = 1 to 100
Workbooks.OpenText chemin & i & name, , 1, xlDelimited, , , , True
mes instructions
next i
End sub
J'ai vu plusieurs personnes ayant le même type de problème mais aucune réponse n'a pu m'aider à résoudre ce problème...
Si quelqu'un a la solution??!! Merci d'avance!