Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Nommer feuille inserrée.

  • Initiateur de la discussion Initiateur de la discussion gg21
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

G

gg21

Guest
Bonjour,

Mon souhait est de réaliser une macro pour :
Insérer une nouvelle feuille et la nommer à partir du contenu d'une cellule de la feuille de départ.
Le code ci-dessous fonctionne jusqu'à la dernière étape : "ActiveSheet.Name = Paste" où il me semble que ce soit "= Paste" qui ne convienne pas.

Sub newfeuil()
ActiveCell.Offset(-0, -0).Select
Selection.Copy
Sheets.Add
ActiveSheet.Name = Paste
End Sub

Je vous remercie par avance de l'aide que vous pourrez m'apporter.

Bien cordialement.
 
bonjour Gg21 , bonjour BoH

j'ai interprété que tu souhaitais créer une feuille et la renommer avec la valeur de la cellule active : dans ce cas tu peux essayer

Sub newfeuil1()
Dim NomFeuille As String

NomFeuille = ActiveCell 'insertion valeur de la cellule active dans une variable
Sheets.Add 'ajout feuille
ActiveSheet.Name = NomFeuille'renomme la feuille
End Sub


ci-dessous une 2eme version pour gérer les erreurs eventuelles ( nom de feuille deja existant , cellule vide lors de la definition du nom ..)

Sub newfeuil2()
Dim NomFeuille As String
Dim i As Byte

NomFeuille = ActiveCell 'insert valeur de la cellule active dans une variable

'*********** Option : *****************
'boucle sur les feuilles du classeur pour verifier que le nouveau nom n'existe pas
For i = 1 To Sheets.Count
If Sheets(i).Name = NomFeuille Then
MsgBox "Ce nom de feuille existe déja", , "Message"
Exit Sub 'on sort de la procedure si le nom existe deja
End If
Next i
'**************************************

Sheets.Add 'ajout feuille

'la feuille est renommée si la variable NomFeuille n'est pas vide
'(sinon la feuille prendra le nom automatique donné par Excel:Feuil2,Feuil3...)
If Not NomFeuille = "" Then ActiveSheet.Name = NomFeuille
End Sub


bonne journée
MichelXld
 
Bonjour Boh et Michel,

Boh, J'avais déja essayé ta proposition, sans résultat. Mais merci tout de même.

Michel, Ta première solution fonctionne très bien et la seconde est la cerise sur le gâteau. Grand merci.

Bonne journée à tous deux.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
18
Affichages
445
Réponses
10
Affichages
661
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…