Macro, flexibilité nom

manoelinho Messages postés 46 Statut Membre -  
 Paf -
Bonjour,

je vais essayer de vous presenter le probleme que je rencontre.

J'ai une base de donnée dont je dégage les valeurs principales dans un nouveau classeur.

j'ai donc créé une macro qui me permet de copier un onglet dans un nouveau classeur.

Le probleme vient du fait que j'ai 64 onglets à copier et que je ne sais pas comment copier les 64 d'un coup sans faire beuguer l'ordinateur.

Je copie donc les onglets les uns apres les autres par groupe de 5.

Je copie d'abord un onglet en valeur et j'enregistre le nouveau classeur sous le nom incrit dans la cellule Q1.
ActiveWorkbook.SaveAs Filename:= _
"X:\CdG\Présentations\2011\2011 08 bis\Package Budget Leader\" & "" & Range("Q1").Value, _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

Apres je continue et je copie les autres onglets dans ce classeur les uns apres les autres.

La premiere fois quand je l'ai crée il n'y a pas eu de probleme parce que je travaillais toujours avec la meme personne.

Sauf que voila, des que je souhaite changer de personne la macro ne fonctionne plus car elle cherche le nom de la personne avec laquelle j'ai enregistrer la macro.
voici l'écriture que j'ai passé

sheets(Array("MonthBudget Leader Group Global", "YTD Budget Leader Group ITOPS", _
"YTD Budget Leader Group Sales")).Select
Sheets("YTD Budget Leader Group Sales").Activate
Sheets(Array("MonthBudget Leader Group Global", "YTD Budget Leader Group ITOPS", _
"YTD Budget Leader Group Sales")).Copy After:=Workbooks( _
"Mathilde Lelièvre.xlsx").</gras>Sheets("YTD Budget Leader Group Global")

J'ai donc créé la macro avec Mathilde lelievre mais je ne sais pas comment faire pour que la macro fonctionne avec d autres personnes. J'aimerais savoir comment faire pour que la macro soit plus flexible et que je puisse l'utiliser avec n'importe qu'elle valeur présente dans Q1

Merci d 'avance pour votre aide précieuse

A voir également:

1 réponse

Paf
 
bonjour,

remplace "Mathilde Lelièvre.xlsx" par:

MonFichier ( sans " "), une variable que vous aurez définie précédemment:

MonFichier= Sheets("nom de la feuille").Range("Q1").Value

Bonne suite
0