Excel - Insérer nom de l'onglet dans cellule

Résolu/Fermé
bibidel -  
 hugo -
Bonjour,

Auriez-vous l'astuce pour insérer le nom de l'onglet d'une feuille de calcul Excel dans une cellule.

Merci à tous
Configuration: Windows XP
Internet Explorer 6.0
A voir également:

34 réponses

skall34
 
Genial! ça marche nickel !!!
pour info, dans la formule de bibidel, si on fait un copié collé sous excel, il reconnait les guillemets comme 2 apostrophes. donc pensez à faire les modifications adéquate.
0
Dipabest
 
Je viens d'essayer.

Ca ne fonctionnait pas jusqu'a ce ce j'aie enregistré (et donc nommé) le document.

Après coup, ça paraît très logique pour une formule faisant référence au nom de fichier mais ça me semblait intérresant de le préciser pour les débutants.
0
bibidel Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   36
 
Bonjour Éric, contente de te lire... :-)
Bonne année à toi également.
Je ne sais pas non plus pourquoi lorsque je fais un copier-coller vers un éditeur de texte d'une formule Excel cette double quote se transforme en 2 simples.
Le mystère subsiste depuis plus de deux ans maintenant.... je dois avoir un petit bout de config. tordu qq part.
à bientôt
0
hmcirta Messages postés 239 Date d'inscription   Statut Membre Dernière intervention   21
 
Salut gbinforme

Merci pour ces formules, ça a marché avec la première mais pas avec les deux dernières, il me semble qu'il y a une erreur dans la saisie des formules. Pourrai-tu les revoir et les corriger? Merci
-1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
hmcirta Messages postés 239 Date d'inscription   Statut Membre Dernière intervention   21
 
Salut gbinforme

Merci de ta réponse. Je me suis rendu compte de cela juste après avoir posté mon message. Et ça marche très bien.

Merci encore
-1
bibidel
 
Re bonjour !
Bon ça marche, MAIS j'ai le même résultat sur toutes les feuilles alors je vous sollicite encore.
Cette info est présente dans une cellule de chaque feuille et je souhaiterais qu'elle se mette à jour !!! GRRRRRRR
Merci d'avance.
Bididel
-1
kjorgahn
 
Dit merci à néné

Function SheetName() As String
Application.Volatile
SheetName = Application.Caller.Parent.Name
End Function
0
bibidel
 
Re bonjour à tous !
Bon ça marche .... au début.
En fait j'ai le même résultat dans chaque cellule de chaque feuille, ça prend partout la même référence du dernier onglet mis à jour donc je vous sollicite encore et encore !
Merci d'avance,
Bibidel
-1
Le Pingou Messages postés 12249 Date d'inscription   Statut Contributeur Dernière intervention   1 458
 
Bonjour bibidel,
C'est juste en passant, il me semble que les propositions de gbinforme et eriiic sont parfaites et comme j'ai du mal à comprendre vos désirs, la mise à dispositions de votre classeur sur www.cjoint.com permettrait de voir plus clair... à vous de voir.
-1
bibidel Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   36
 
J'essaie de m'expliquer :
La formule fonctionne bien sur une feuille mais lorsque je fais la mise à jour F9 c'est la même référence d'onglet qui apparait dans la cellule de toutes les feuilles alors que l'onglet est (bien évidemment) différent pour chaque feuille.
Je ne sais pas si je suis claire ???
Merci quand même mais c'est un fichier professionnel et je n'ai pas le droit de vous le transmettre...
A bientôt, j'espère.
Bibidel
-1
Le Pingou Messages postés 12249 Date d'inscription   Statut Contributeur Dernière intervention   1 458
 
Bonsoir bibidel,
Oui je vous comprends dans le cas d'un fichier professionnel. Mis à part cela je viens de faire une série de test sur plusieurs de mes classeurs et la formule fonctionne impeccable y compris avec Maj. PF9, chaque cellule mentionne le nom de la feuille qui lui est propre.
De plus je soutiens fermement le bien fondé des propos d'eriiic.
De plus, le déplacement d'une feuille n'a aucune incidence sur son nom étant donné qu'il ne change pas, sauf de place.
-1
bibidel Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   36
 
Remplacer " t; par une double quote (problème d'affichage)

Bibidel
-1
Utilisateur anonyme
 
Bon j'ai trouvé pourquoi cela ne marchait pas :
il faut etre sur un fichier deja enregistrer et moi je testais la fonction sur un nouveau classeur,
A+

Seb
-1
bibidel Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   36
 
Patience et obstination et..............ça marche !
Si j'ai pu te rendre service c'est top.
Bibidel
0
dandan_lefebvre
 
Je ne crois pas que c'est possible par une formule, mais par macro ça donne:

Sub nom()
'
' nom Macro

Cells(1, 1) = Sheets(1).Name

End Sub


Où Cells(1,1) veut dire la cellule A1 et le "1" dans Sheets(1) veut dire la première feuille du classeur.

Cette macro aura pour effet de saisir le nom de l'onglet dans la cellule A1 de l'onglet actif.
-2
kjorgahn
 
Ta macro est fausse, car elle ne mettra à chaque fois que le nom de ta première feuille, la bonne macro dans ta méthode serait :

Sub nom()  
'  
' nom Macro  

Cells(1, 1) = ActiveSheet.Name  

End Sub 


Moi perso, je préfère la méthode de néné, qui me semble à la fois plus souple et automatique.

Ta méthode est juste mais il faut pour chaque onglet executer la macro qui s'ajoute toujours au même endroit de la feuille.

La méthode d'Eric est à mon sens la pire, parce qu"elle est lourde si on doit souvent la recopier, et ne marche pas sur plusieurs onglet (donc aucun intérêt)
___________________________________________________________________________

Pour le nom du Fichier :


Dans un module de macro on met :

Function FileName() As String  
Application.Volatile  
FileName = Sheets.Parent.Name  
End Function


On Obtient le nom du fichier avec l'extention.

Pour Retirer l'extention dans le gestionnaire de nom tu créer :

FileName2 avec pour formule :
=GAUCHE(FileName();TROUVE(".";FileName())-1)


dans n'importe quelle cellule, n'importe où tu écris :
=FileName2


__________________________________________________________________________

Pour le nom d'un onglet :

mettre dans un module de macro :

Function SheetName() As String  
Application.Volatile  
SheetName = Application.Caller.Parent.Name  
End Function


puis utiliser dans n'importe quelle cellule et n'importe quel onglet la formule :

=SheetName()
0
néné
 
Bonjour

Ne voyant pas le problème cocher "Résolu", j'ai donc apporter mon savoir faire

En ce qui concerne la Pub:

Internet est truffé de Pub et ce n'ai pas une obligation de cliquer dessus à chaque fois
-2