Bonjour !
Alors, je n'ai pas de vraies connaissances en info et encore moins en prog.
Donc j'essaye de comprendre en cherchant sur les forums et choppant des bouts de codes par ci par là afin de les modifier à ma sauce afin que cela colle avec mes besoins.
Je travaille actuellement sur Excel Standard 2003 et j'aimerais que ma macro agisse sur tous les fichiers excels situés dans le dossier sur lequel je veux agir.
Ma macro :
Donc j'aimerais que cette macro agissent sur tous mes fichiers excels.
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 Sub AHAH() ' Dim classeur_vierge As Workbook Dim nom_du_classeur As String ''Set classeur_vierge = Workbooks.Open("C:\Documents and Settings\jfeschotte\Bureau\SupaMacro\Fichiers pdf\excel2.xls") ' <-- J'ai mis cette ligne en commentaire car je ne comprends pas vraiment quelle est son action. With ActiveWorkbook.Worksheets("Feuil1") nom_du_classeur = .Range("A1").Text & .Range("A2").Text End With ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\jfeschotte\Bureau\SupaMacro\Fichiers pdf\" & nom_du_classeur & ".xls" ActiveWorkbook.Close ActiveWorkbook.Save ' Ces deux dernières lignes situées juste au dessus sont-elles réellement nécessaire ? End Sub
Voici ma tentative de codage :
Donc le soucis de ce code est qu'il ''marche'' mais il ne crée uniquement que le premier fichier de la liste (dans le dossier). Il fait comme si les x autres fichiers situés en dessous n'existaient pas.
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 Sub Testcheckdossier() 'appliquer un traitement quelconque à tous les fichiers d'un dossier Dim myPath As String myPath = "C:\Documents and Settings\jfeschotte\Bureau\SupaMacro\Fichiers pdf\" 'Dossier concerné stgFilename = Dir(myPath & "*.xls") 'Tous les fichiers du dossier finissant en .xls Do While stgFilename <> "" 'Jusqu'à ce que le nom des fichiers commence par rien Workbooks.Open Filename:=myPath & stgFilename 'Que suis-je censé mettre ou remplacé içi ? oO ' Ici se situe ma première macro stgFilename = Dir() Loop End Sub
Je ne demande pas qu'on me fasse un code que je puisse utiliser directement (si une ame charitable le réalise j'en serai ravi), mais mon but premier est comprendre chaque partie de code que je ne comprends pas justement afin de pouvoir modifier et faire marcher correctement tout ça.
En attendant des réponses, je vous remercie d'avance et vous souhaite une bonne fin de journée.
Julien
Partager