Bonjour,
je dois compliler les infos en provenance de 3500 fichiers excel nommés par un simple numéro entre 1 et 5000 (certains numéros sont manquants).
L'idée de base est de les déplacer après le traitement.
Le fichier de compilation est dans la racine, les fichiers à traiter Racine\to do et les fichiers traités Racine\Done.Pour l'instant j'arrive à les renommer ailleurs mais pas à effacer l'original.
Existe-t-il une solution pour soit déplacer le fichier initial, je le renommerais après, soit effacer le fichier de son emplacement initial après l'avoir sauvegardé ailleurs.
J'aimerais pouvoir également contrôler que le fichier n'est pas déjà ouvert.
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
21
22
23
24
25
26
27 Sub Action() Dim X As Integer Dim CurrentPath As String CurrentPath = ActiveWorkbook.Path For X = 1 To 5 On Error GoTo ErrorHandler 'permet de sauter à la fin en cas d'absence de fichier ActiveWorkbook.ConflictResolution = xlLocalSessionChanges Workbooks.Open CurrentPath & "\To do\" & X & ".xls" ActiveWorkbook.ConflictResolution = xlLocalSessionChanges ' c'est une fonction de recopie Copy_Data (X) ' ici la sauvegarde du fichier dans un autre répertoire ActiveWorkbook.SaveAs Filename:=CurrentPath & "\Done\" & X & "A.xls" ActiveWindow.Close ErrorHandler: Next X End Sub
Merci de votre aide![]()
Partager