Copier modèle et renommer

Bonjour,

Novice dans le VBA, je souhaite connaitre le code pour copier une nouvelle feuille à partir d'un modèle à la suite des onglets existants de mon classeur et pouvoir la renommer par le biais d'une box. Pourriez vous m'aider svp ?

Bonjour,

joins le modèle à ta demande STP, même imparfait !

Le plus simple, sans fioritures

Sub NouvelleFeuille()
Dim ws As Worksheet
Set ws = ActiveSheet
Cells.Copy
Sheets.Add After:=Worksheets(Worksheets.Count())
ActiveSheet.Name = InputBox("Saisie du nom de l'onglet : ")
Range("A1").Select
ActiveSheet.Paste
End Sub

Nickel ! C'est exactement ce qu'il me fallait merci.

JE me suis emballé un peu vite : la macro est bonne sauf que je souhaite intégrer un sommaire qui me permettrait de naviguer dans différents onglets.

La macro que vous m'avez envoyé me permet de copier uniquement la feuille.

Je vous envoie le fichier que je suis en train de créer pour que vous compreniez : L'idée est de créer un nouvel onglet à partir du modele nommé "ITEM VIERGE" en cliquant sur le bouton "Créer un nouvel item" du sommaire, pouvoir le copier à la suite et le renommer.

Merci pour la modification du code

7test.xlsm (34.24 Ko)

Quelqu'un a une petite idée?

Ben voilà pourquoi il fallait un fichier excel dès le début.

Je regarde ...

Avant de répondre ...

le sommaire doit être où et sous quelle forme ?

il va falloir faire le ménage dans les macors !!

Dans le classeur, je voudrais qu'apparaisse uniquement l'onglet SOMMAIRE, l'onglet ITEM VIERGE étant caché afin d'éviter toute modification de celui-ci

Pour ce qui est des macros, effectivement j'ai oublié d'enlever les macros de mon fichier d'origine

Ce n'était pas ma question ...

Sub NouvelleFeuille()

    Sheets.Add After:=Worksheets(Worksheets.Count())
    Do
        NouveauNom = InputBox("Saisie du nom de l'onglet : ")
    Loop Until Not FeuilleExiste(NouveauNom)
    ActiveSheet.Name = NouveauNom
    Range("A1").Select
    Sheets("ITEM VIERGE").Cells.Copy
    ActiveSheet.Paste

    Sheets("SOMMAIRE").Select
    Range("A" & Application.Rows.Count).End(xlUp).Offset(1, 0).Select
    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:= _
        "'" & NouveauNom & "'!A1", TextToDisplay:=NouveauNom

End Sub

Function FeuilleExiste(ByVal sNomFeuille As String) As Boolean
    On Error GoTo Err_FeuilleExiste
    FeuilleExiste = False
    FeuilleExiste = Not ActiveWorkbook.Worksheets(sNomFeuille) Is Nothing
Err_FeuilleExiste:
End Function

Le code est bon. Le seul truc que je ne voudrais pas est l'affichage récapitulatif des onglets dans le sommaire. Le reste me va parfaitement. Quelles lignes du code faut-il que j'enleve pour ne pas voir apparaitre ces liens ?

Alors, on récapitule :

intégrer un sommaire qui me permettrait de naviguer dans différents onglets.

le sommaire doit être où et sous quelle forme ?

Le code est bon. Le seul truc que je ne voudrais pas est l'affichage récapitulatif des onglets dans le sommaire.

réponse :

    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:= _
        "'" & NouveauNom & "'!A1", TextToDisplay:=NouveauNom
Rechercher des sujets similaires à "copier modele renommer"