Mwadepaname
XLDnaute Junior
Bonjour le forum,
je suis presque à bout de mon fichier, il ne me reste plus qu'à renommer les onglets créent cependant je sèche.
je souhaite en cliquant sur un bouton ajouter 3 nouveaux onglets et qu'ils soient renommés en fonction de la valeur de la cellule A2 d'un autre onglet
Quelqu'un aurait une idée. J'ai essayé avec boucle mais pas trouvé.
Ma dernière tentative me donne l'erreur 1004 (vous avez donné un nom de feuille non valide)
Le problème vient de cette ligne Sheets(Sheets.Count - 3).Name = Sheets(Sheets.Count - 3).Range("a2")
Merci
Fichier joint.
Voici mon code :
Sub newsheet()
Application.ScreenUpdating = False
Dim MyArray() As String
Dim NbOnglets As Long
NbOnglets = ActiveWorkbook.Sheets.Count
Sheets(Array(NbOnglets - 3, NbOnglets - 2, NbOnglets - 1)).Copy Before:=Sheets(ThisWorkbook.Sheets.Count)
Sheets(Sheets.Count - 3).Range("a2") = Sheets(Sheets.Count - 6).Range("h2")
Sheets(Sheets.Count - 2).Range("a2") = Sheets(Sheets.Count - 5).Range("h2")
Sheets(Sheets.Count - 1).Range("a2") = Sheets(Sheets.Count - 4).Range("h2")
Sheets(Sheets.Count - 3).Name = Sheets(Sheets.Count - 3).Range("a2")
Sheets(Sheets.Count - 2).Name = Sheets(Sheets.Count - 2).Range("a2")
Sheets(Sheets.Count - 1).Name = Sheets(Sheets.Count - 1).Range("a2")
End Sub
je suis presque à bout de mon fichier, il ne me reste plus qu'à renommer les onglets créent cependant je sèche.
je souhaite en cliquant sur un bouton ajouter 3 nouveaux onglets et qu'ils soient renommés en fonction de la valeur de la cellule A2 d'un autre onglet
Quelqu'un aurait une idée. J'ai essayé avec boucle mais pas trouvé.
Ma dernière tentative me donne l'erreur 1004 (vous avez donné un nom de feuille non valide)
Le problème vient de cette ligne Sheets(Sheets.Count - 3).Name = Sheets(Sheets.Count - 3).Range("a2")
Merci
Fichier joint.
Voici mon code :
Sub newsheet()
Application.ScreenUpdating = False
Dim MyArray() As String
Dim NbOnglets As Long
NbOnglets = ActiveWorkbook.Sheets.Count
Sheets(Array(NbOnglets - 3, NbOnglets - 2, NbOnglets - 1)).Copy Before:=Sheets(ThisWorkbook.Sheets.Count)
Sheets(Sheets.Count - 3).Range("a2") = Sheets(Sheets.Count - 6).Range("h2")
Sheets(Sheets.Count - 2).Range("a2") = Sheets(Sheets.Count - 5).Range("h2")
Sheets(Sheets.Count - 1).Range("a2") = Sheets(Sheets.Count - 4).Range("h2")
Sheets(Sheets.Count - 3).Name = Sheets(Sheets.Count - 3).Range("a2")
Sheets(Sheets.Count - 2).Name = Sheets(Sheets.Count - 2).Range("a2")
Sheets(Sheets.Count - 1).Name = Sheets(Sheets.Count - 1).Range("a2")
End Sub