Petit probleme en VBA
RésoluOrang-outanBlanc94 Messages postés 71 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Etant novicee en VBA, j'ai réalisé ce code :
CheminCollegue = "P:\7 ACTIVITE METRO\19 - VIGNETTES VP\SAISIE RESULTATS\EMLAE\"
ClasseurCollegue = CheminCollegue & "MADIC VIGNETTES MILLESIME 2025.xlsm"
Workbooks.Open ClasseurCollegue
Workbooks("Analyse et préparation secteur RS.xlsm").Sheets("Suivi vignettes vertes par Tech").Range("B10:E49").Clear
Workbooks("MADIC VIGNETTES MILLESIME 2025.xlsm").Sheets("Recap Vignettes & Recherche").Range("B7:E46").Copy
Workbooks("Analyse et préparation secteur RS.xlsm").Sheets("Suivi vignettes vertes par Tech").Activate
Range("B10").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Workbooks("MADIC VIGNETTES MILLESIME 2025.xlsm").Close savechanges:=False
Range("A1").Select
Mon problème est que le nom du fichier qui me sert à récup mes données changera chaque année !!
Donc j'ai mis dans ma feuille Sheets("Suivi vignettes vertes par Tech") la cellule B62 qui me donnera le nom en fonction de l'année.
J'ai également mis dans ma feuille Sheets("Suivi vignettes vertes par Tech") la cellule B60 qui me donne le chemin où trouver mon fichier
Mais je bloque pour le retranscrire en language VBA ...
Pouvez vous m'aider svp ?
Windows / Chrome 134.0.0.0
- Petit probleme en VBA
- Petit 2 ✓ - Forum Bureautique
- Comment imprimer une photo en petit - Forum Photo numérique
- Trier du plus petit au plus grand excel - Guide
- Petit 3 ✓ - Forum Word
- Comment écrire mètre carré avec un m+2 expos? ✓ - Forum Windows
6 réponses
Bonjour,
Actuellement vous copiez des cellules dans un classeur qui existe.
Quelle classeur doit etre sauvegarde avec un nouveau nom?
Bonjour,
Tout a fait Thierry, B2 de quel classeur!
Pourquoi en xlsm?
Re,
C'est B62 de mon classeur " Analyse et préparation secteur RS" , feuille " Suivi vignettes vertes par Tech" où je récupère le nom du fichier ( ici c'est "MADIC VIGNETTES MILLESIME 2025.xlsm") ou je vais récupéré mes données pour les mettre dans le premier classeur.
Le format en .xlsm est que le fichier source contient également des macros
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionRe,
une facon de faire.
Vu que je n'ai pas fait de repertoire et fichier source, il y aura peut-etre des erreur
Sub test() Set WB = ThisWorkbook.Worksheets("Suivi vignettes vertes par Tech") CheminCollegue = "P:\7 ACTIVITE METRO\19 - VIGNETTES VP\SAISIE RESULTATS\EMLAE\" With WB .Range("B10:E49").Clear Classeur_Annee = .Range("B2") End With ClasseurCollegue = CheminCollegue & Classeur_Annee Workbooks.Open ClasseurCollegue ActiveWorkbook.Worksheets("Recap Vignettes & Recherche").Range("B7:E46").Copy WB.Range("B10") Workbooks(Classeur_Annee).Close savechanges:=False Range("A1").Select End Sub
Faudra penser a changer le nom pour l'annee suivante avant de lancer le code
J'ai du m'expliquer, c'est les valeurs que je copie dont la source changera chaque année.
Aujourd'hui avec le code fait je récupère ce que j'ai besoin, mais en 2026 par exemple je serais obligé de remplacer dans mon code 2025 par 2026 !
C'est pour cela que dans Sheets("Suivi vignettes vertes par Tech") cellule B62 je génère mon nom de fichier par rapport à l'année