Changer nom d'une feuille à partir d'une cellule

XkevinX

XLDnaute Junior
Bonjour,

Je demande un conseil aux experts de ce forum ^^.

Alors voilà, j'exporte des feuilles dans un certain classeur pour faire des calculs et j'ai vraiment des noms barbares et je voudrais améliorer ce point.

La cellule qui m'intéresse est la cellule M5.

J'ai trouvé sur le forum cette macro mais cela ne fonctionne pas :

Sub NomFeuille()

Nom = Sheets("Feuil1").Range("M5").Value
ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = Nom

End Sub


Le problème vient peut-être du Feuil1 car ma feuille ne se nomme pas ainsi mais le souci c'est que je ne connaîs pas à l'avance le nom de ma feuille exportée.

Ou peut-être une Function au lieu du Sub vu que Nom est utilisé pour changer le nom de la feuille.

Vous êtes plus à même de savoir d'où vient le problème.


Merci de vos éventuelles réponses.

Kévin.
 

XkevinX

XLDnaute Junior
Re : Changer nom d'une feuille à partir d'une cellule

Re,


Oui, j'en ai déjà lu quelques unes.

En fait, j'ai 19 feuilles et seules 16 ont eu leur nom modifiés.

Dans les 3 manquantes, une auraît le même nom qu'une autre ( là je comprends que sa refuse )
Mais les deux autres ?
 

XkevinX

XLDnaute Junior
Re : Changer nom d'une feuille à partir d'une cellule

Re,

Les noms sont les suivants : ROANNE - Lycée Jean Puy (Rue Des Déportés)
POUILLY-LES-NONAINS - Le Bourg ( Le Bourg existe déjà comme nom)
RIORGES - Les Canaux

En terme de caractères interdits, je n'en vois pas ici ; sauf erreur de ma part.
 

XkevinX

XLDnaute Junior
Re : Changer nom d'une feuille à partir d'une cellule

Re,

Oui, je sais d'où ma question précédente dans le fil et l'insertion de split, non ?

Pour le premier, en coupant entre le - et (, cela passerait : Lycée Jean Puy.

Pour le 3ème, je vois pas pourquoi cela ne fonctionne pas.

Pour le 2ème, j'ai posté une autre discussion.
 

XkevinX

XLDnaute Junior
Re : Changer nom d'une feuille à partir d'une cellule

Re,

Un blocage a 30 caractères après le split serait possible ?

Genre quelque chose comme sa :

Si Résultat Split <30 => affiche tout
Si Résultat Split >30 => Affiche jusqu'à 30.
 

Pierrot93

XLDnaute Barbatruc
Re : Changer nom d'une feuille à partir d'une cellule

Re,

modifie comme suit :
Code:
If Sh.Name <> "Recap" And Not IsEmpty(Sh.Range("M5")) Then Sh.Name = Left(Split(Sh.Range("M5"), "-")(UBound(Split(Sh.Range("M5"), "-"))), 30)
 

Discussions similaires

Statistiques des forums

Discussions
312 287
Messages
2 086 827
Membres
103 397
dernier inscrit
Kilement