Excel > duppliquer et renommer onglet à partir d'une liste [résolu] - VB/VBA/VBS - Programmation
Marsh Posté le 29-09-2005 à 14:57:19
je n'ai pas compris ce que tu veux faire avec utilisateur FR et GB
laquelle des deux tu copies ?
en attendant voici le code de crétion des fichier excel par uilisateur
Dim Source
Dim Cible
Dim Cll As Range
Source = ActiveWorkbook.Name
For Each Cll In Range("A1:" & Range("A65536" ).End(xlUp).Address)
Workbooks.Add
ChDir "c:\temp"
ActiveWorkbook.SaveAs Filename:=Workbooks(Source).Sheets("liste utilisateur" ).Cells(Cll.Row, 3).Value
Cible = ActiveWorkbook.Name
Workbooks(Cible).ActiveSheet.Name = Workbooks(Source).Sheets("liste utilisateur" ).Cells(Cll.Row, 1).Value
Next
Marsh Posté le 29-09-2005 à 16:48:34
Salut Kancele,
J'ai regardé un peu ton probleme, donc voila un tit bout de macro qui devrait faire ce que tu veux (copier les 2 onglets dans un seul fichier excel, renomer les onglets et enregistrer le fichier avec le nom utilisateur en colone C, fermer le fichier, et continuer sur toute ta liste)
Code :
|
En ce qui concerne ta macro j'ai pas trop regardé, je suis pas douée sur les macros des autres. un autre que moi t'aidera surement à comprendre ce qui colle pas dedans, mais je crois qu'il faudrait au moins que tu dise ou elle bloque et le message que te donne excel.
bon courage et tiens nous au courant
Marsh Posté le 03-10-2005 à 11:39:50
super merci !
ca marche comme ça.
en fait j'ai pas d'erreur excel, elle ne fait que dupliquer les onglets, et ne les renomme pas !
Marsh Posté le 03-10-2005 à 14:43:18
Salut kancele,
le fait que les onglets ne se renomenaient pas vennait de ta ligne :
Code :
|
avec la copy tu peux définir la position de la feuille (before/after). mais pour changer son nom il faut le faire en un 2ème temps.
Code :
|
Sinon si la macro marche tant mieux.
Marque résolu dans le sujet du premier post ça pourra peut-être en aider d'autres
Marsh Posté le 29-09-2005 à 11:47:17
Bonjour,
Je souhaite faire un questionnaire que je vais envoyer en pièce jointe par mail.
J'ai un onglet avec la liste des personnes "nom : liste utilisateur"
colonne 1 = utilisateur01---utilisateur75
colonne 2 = mail
colonne 3 = nom + prénom
J'ai le questionnaire sur un onglet "nom : utilisateur FR"
J'ai le même questionnaire traduit en anglais 'nom : utilisateur GB"
Je voudrais créer une macro me permettant de copier les onglet utilisateur FR et utilisateur GB dans un nouveau fichier excel qui serait enregistré dans un dossier précis sur mon pc.
Le fichier et les onglets devraient etre renommé :
fichier : nom prénom.xls soit (colonne 3) de l'onglet liste utilisateur
utilisateur FR = nom prénom FR
utilisateur GB = nom prénom GB
pour le moment je me suis occupé de tester ma macro sur l'onglet FR en tentant de le dupliquer et le renommer ! mais j'échoue !
voilà ce que j'ai fait :
Sub CreationOnglettest()
ActiveCell.CurrentRegion.Select
Dim tableau() As String
ReDim tableau(1 To ActiveCell.CurrentRegion.Count)
For ctr = 1 To ActiveCell.CurrentRegion.Count
tableau(ctr) = ActiveCell.CurrentRegion(ctr)
Next
For I = 1 To ActiveCell.CurrentRegion.Count
Sheets(Array("Utilisateur FR" )).Select
Sheets("Utilisateur FR" ).Activate
Sheets(Array("Utilisateur FR" )).Copy.Name = tableau(ctr)
Next
'
End Sub
est ce que vous pourriez me dire pourquoi ca ne marche pas ! et m'aider à finir
Message édité par kancele le 05-10-2005 à 14:07:49