Renommer automatiquement une feuille d'après une cellule [Fermé]

Signaler
-
Messages postés
1941
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
23 août 2020
-
Bonjour,
Je chercher à renommer automatiquement une feuille d'après une cellule qui se trouve sur cette feuille en C6. J'ai une centaine de feuilles sur le même classeur que je voudrais renommer automatiquement, à chaque fois d'après la cellule C6 dont le texte change d'une feuille à l'autre.
Je n'y connais rien en macro, ni VBE, etc. et si cette formule existe elle me serait d'une grande aide !
Je travaille sur Excel 2011 en anglais, version 14.6.6, sur Mac.
Merci !


4 réponses

Messages postés
1941
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
23 août 2020
140
Bonjour,

Impossible par formule, mais bien par macro...
Fais Alt+F11, dans l'explorateur de projet VBA (à gauche), insère un module et colle :
Sub renommage()
Dim sh As Worksheet
For Each sh In Worksheets
sh.Name = sh.Range("C6")
Next
End Sub 


Place ton curseur dans ce code et appuie sur le bouton Play.

A+
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Merci Zoul !
J'ai réussi à le faire pour la première feuille mais pas pour toutes les autres. Lorsque je retente la même chose, Excel m'affiche : Run-time error '1004' : Application-defined or object-defined error
Comment réparer le problème ?

De même, lorsque je modifie le texte de la cellule C6, il ne se change pas automatiquement dans le nom de la feuille...
Messages postés
1941
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
23 août 2020
140
Tu as des cellules C6 qui sont vides ?
>
Messages postés
1941
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
23 août 2020

Oui, toutes sauf une car c'est une matrice que je n'ai pas encore remplie.
Messages postés
724
Date d'inscription
dimanche 15 novembre 2015
Statut
Membre
Dernière intervention
3 décembre 2020
118
Bonsoir,

Essaye de placer cette macro dans ThisWorkbook

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Source As Range)
'si c6 est renseigné manuellement
On Error Resume Next
Sh.Name = Sh.[c6]
End Sub

Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
'si c6 contient une formule
On Error Resume Next
Sh.Name = Sh.[c6]
End Sub

Slts
Merci mais je ne comprends vraiment rien aux macro et n'arrive pas à ce que ça fonctionne correctement...
Messages postés
724
Date d'inscription
dimanche 15 novembre 2015
Statut
Membre
Dernière intervention
3 décembre 2020
118
Bonsoir
Pour qu'un contributeur puisse t'aider il serait souhaitable que tu mettes un fichier anonymisé à la disposition

1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur commencamarche , et dans ton message de réponse tu fais "Coller".
Slts
Voici le lien : http://www.cjoint.com/c/FLgqskIDS1F
Je voudrais donc renommer automatiquement les onglets et les dupliquer à l'infini avec cette même fonction automatique. Les chiffres dans la deuxième colonne seront remplacés par des noms.
Pardon pour le retard et merci !
Messages postés
1941
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
23 août 2020
140
Bonjour,

C'est bien ce que je pensais... Ta question ne correspond pas tout à fait à ton besoin (p.ex. il n'était pas question initialement de dupliquer les feuilles, je pensais que toutes étaient déjà créées).
Je pense que tu as ta feuille "SEM" qui contient toutes les informations. Mon idée est de :
- dans un premier temps, créer un onglet "Modèle" dont les formules conviennent quelle que soit la valeur dans la cellule C6 ;
- ensuite dupliquer par macro cet onglet "Modèle" et donner le nom approprié à chaque onglet et à renseigner la cellule C6.

Voila ma proposition : https://www.cjoint.com/c/FLhlmI3iMrJ
Il te suffit d'appuyer sur le bouton pour créer tous les onglets.

A+
Alors c'est génial, merci beaucoup, en effet j'avais une centaine d'onglets à la base mais vu que j'ai changé les formules et la mise en page je devais les dupliquer à nouveau. Par contre à chaque fois que je crée un nouvel onglet, une nouvelle feuille "Modèle" se rajoute, est-ce que je peux les supprimer où est-ce qu'elles servent de référence ? Et en réalité j'ai besoin de bien plus de 10 lignes sur ma feuille "SEM" donc est-ce que je peux en rajouter plein et la création de nouvelles feuilles prendra bien les bonnes données, soit toutes les 3 lignes ?
Merci !
Messages postés
1941
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
23 août 2020
140
Par contre à chaque fois que je crée un nouvel onglet, une nouvelle feuille "Modèle" se rajoute, est-ce que je peux les supprimer où est-ce qu'elles servent de référence ?
Les deux feuilles nécessaires sont "SEM" et "Modèle". Je viens de remarquer que j'ai joint le fichier après exécution de la macro. Tu peux donc supprimer les feuilles 1 à 10 et exécuter la macro.

Et en réalité j'ai besoin de bien plus de 10 lignes sur ma feuille "SEM" donc est-ce que je peux en rajouter plein et la création de nouvelles feuilles prendra bien les bonnes données, soit toutes les 3 lignes ?
C'est prévu, il faut bien respecter la structure existante dans "SEM"