Bonjour,
Je souhaite faire une répétition de tâches pour chacun des classeurs d'un même répertoire. Ici, j'ai inscrit pour simplifier la tâche comme étant "message = nom du fichier".
J'ai repris un code qui paraît tout simple sur les tutoriels, mais qui ne fonctionne pas chez moi. VBA me renvoie "Erreur exécution 5 - Argument ou appel de procédure incorrect"... Quand on lance la procédure, le tout premier Dir, il trouve bien le 1er fichier alphabetiquement ds le répertoire nommé, mais ensuite il renvoie "" et c'est là qu'il buggue ... alors que :
1) si j'ai bien compris xx = Dir donne le 2e fichier de l'emplacement, puis le 3e...
2) et pourtant, ce n'est pas le seul fichier du répertoire.
Manquerait-il une référence pour le faire fonctionner ? Ou bien y a-t-il qq chose que j'aurais oublié ds l'écriture du code ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Sub listefichier() Dim StrPath As String Dim StrFile As String StrPath = Application.ThisWorkbook.Path StrFile = Dir(StrPath & "\*.xls") For i = 1 To 5 If i = 1 Then StrFile = Dir(StrPath) Else StrFile = Dir End If If StrFile <> "" Then MsgBox "fichier:" & StrFile End If Next End Sub
J'ai bien tourné avant de vous écrire ceci... j'espère que vous saurez me répondre...
Vous remerciant beaucoup par avance de votre aide,
Partager