éditeur VBA Excel: Réactiver une feuille ouverte au nom variable

Résolu/Fermé
borgognoremy Messages postés 19 Date d'inscription vendredi 17 mai 2013 Statut Membre Dernière intervention 6 juin 2013 - Modifié par borgognoremy le 30/05/2013 à 16:43
 borgognoremy - 2 juin 2013 à 18:16
Bonjour,


https://www.cjoint.com/c/CEEqMJJw1ap

Ci-joint le fichier source avec la macro créée.

Cette macro est sensée créer un nouveau classeur par affaire selon une liste d'affaire sur mon fichier source. Sur chaque classeur créé, je vais devoir réaliser des opérations de collage de données provenant du fichier source et bien d'autres choses. Ces opérations devront être répétée sur chaque classeur créé.

En fait, affaire a été nommé dès le départ dans le paragraphe 'formule boucle' comme étant la variable de cette boucle. Ce numéro d'affaire qui changera donc à chaque création de classeur, je dois l'utiliser à plusieurs moments. Je vais avoir à l'utiliser encore pour d'autres choses mais je vois bien que pour le moment, ça ne marche pas.

Pourriez-vous m'aider s'il vous plait?

Merci d'avance de votre aide.;

Baieta
A voir également:

2 réponses

borgognoremy Messages postés 19 Date d'inscription vendredi 17 mai 2013 Statut Membre Dernière intervention 6 juin 2013
31 mai 2013 à 10:17
A oublier... problème résolu seul.
0
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 643
Modifié par pilas31 le 31/05/2013 à 11:11
Bonjour,

Pour info si d'autres ont déjà regardé voila les anomalies trouvées :

1/ le bouton n'était pas associé à la macro "Sub Nvx_class_par_affaire"
2/ des erreurs dans la macro corrigées en gras :
Sub Nvx_class_par_affaire()
'Macro créant un nouveaux classeur par projet et exécutant des tâches diverses'
Chemin = ActiveWorkbook.Path
'Formule de boucle'
For L = 2 To Range("A" & Rows.Count).End(xlUp).Row

Sheets("Accueil").Select

affaire = Range("A" & L).Value
ChemFiche = Chemin & "\" & affaire & ".xls"

'Ajout d'un nouveau classeur'
Workbooks.Add

'Renomme les feuilles'
Worksheets("Feuil1").Name = "Résumé"
Worksheets("Feuil2").Name = "Dépenses"
Worksheets("Feuil3").Name = "Engagements"

'Sauvegarde du classeur à l'emplacement du fichier source'
ActiveWorkbook.SaveAs ChemFiche

'activation du fichier source et ouverture feuille Depenses_cum"
Workbooks("Exemple.xlsm").Activate
Sheets("Depenses_m").Select

'Filtre la feuille sur l'affaire'

Rows("1:1").Select
Selection.AutoFilter
ActiveSheet.Range("$A:$Y").AutoFilter Field:=4, Criteria1:=affaire

'Copie des données colonne A à Y'
Range("A:$Y").Copy

'Coller dans le fichier de l'affaire'

Workbooks(affaire & ".xls").Activate

Sheets("Dépenses").Select
Range("A:$Y").Select
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

'Ferme le classeur de l'affaire'
ActiveWorkbook.Close True
Next

End Sub


Voila comme cela je peux mettre en résolu.
Cordialement,
0
borgognoremy
2 juin 2013 à 18:16
Merci beaucoup pour cette aide. Quelqu'un avait en effet pu m'aider mais un grand merci quand même. Baieta
0