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

Nommer cellule en fonction d'une autre

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 !

auverland

XLDnaute Occasionnel
Bonjour a tous,

Je cherche sans succès une solution pour nommer mes cellules de la colonne F en fonction de la valeur des cellules de la colonne A.

pour etre plus explicite :
si je trouve Thomas dans la colonne A je nomme "Tho" la cellule de la colonne F de cette même ligne.
si je trouve Virginie dans la colonne A je nomme "gini" la cellule de la colonne F de cette même ligne.
ect..

Je souhaites nommer mes cellules car j'ai une macro qui les récupère et mes fichiers n'ont pas toujours le même ordre dans les noms.

Merci d'avance à tous
 

Pièces jointes

Re : Nommer cellule en fonction d'une autre

Re,

Merci chère ânesse pour tes Likes 🙂

J'ai modifié plusieurs fois le code de mon post #15, ce n'était pas évident 🙄

Edit : et je viens encore de le modifier à l'instant.

Bonne fin de soirée.
 
Dernière édition:
Re : Nommer cellule en fonction d'une autre

Bonjour 00, le forum,

Par acquis de conscience j'ai testé avec 10000 noms définis dans le classeur.

Sur Win 8 Excel 2013 la boucle For Each nom/Next nom s'exécute en moins de 1/10ème de seconde.

Bonne journée.
 
Re : Nommer cellule en fonction d'une autre

Bonjour le fil, le forum,

Au lieu de colorer les cellules nommées on peut les doter d'un commentaire :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range, x$, t$, nom As Name
Set r = Intersect(Target, Range("A6", Range("A" & Rows.Count)), Me.UsedRange)
If r Is Nothing Then Exit Sub
On Error Resume Next
For Each r In r 'si entrées multiples
  With r(1, 6) 'cellule en colonne F
    If r = "" Then
      .ClearComments
      .Name.Delete
    Else
      x = ""
      x = .Name.Name 'si la cellule est déjà nommée
      t = x
1     t = InputBox("Entrez le pseudo de <" & r & "> :", "Nommer la cellule " & .Address(0, 0), t)
      If t <> "" Then
        .Name.Delete 'suppression de l'ancien nom
        For Each nom In ThisWorkbook.Names
          If LCase(t) = LCase(nom.Name) Then _
            MsgBox "Ce pseudo est déjà utilisé !", 48: GoTo 1
        Next nom
        .Name = t 'nouveau nom
        If .Name.Name <> t Then GoTo 1
        .AddComment: .Comment.Text t: .Comment.Shape.TextFrame.AutoSize = True
        '.Comment.Visible = True 'si l'on veut afficher le commentaire
      End If
      If IsError(.Name) Then If x <> "" Then .Name = x 'l'ancien nom est recréé
    End If
  End With
Next r
End Sub
Fichier(2).

A+
 

Pièces jointes

- 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

Discussions similaires

  • Question Question
Microsoft 365 Fonction si
Réponses
7
Affichages
136
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…