Afficher le nom de la plage

Résolu
Bonjour,

Y aurait-il une façon qu'une cellule affiche le nom d'une plage?

Par exemple, si la plage A1:E1 s'appelle Plage_1, j'aimerais que F1 indique le texte "Plage_1"

Merci d'avance! :)

5 réponses

  1. Bonsoir,

    Oui mais seulement en VBA, et combien y a t il de plage nommée sur la feuille ?
    0
    1. Merci pour la réponse,

      Actuellement je ne sais pas combien il va y avoir de plage nommée, mais il y en aura certainement une bonne centaine. Je suis en train d'élaborer un fichier qui contiendra plusieurs données.
      0
  2. Re,

    Une centaine, cela fait un peu beaucoup non !
    et sur une feuille ou réparti sur le classeur ?

    de toute façon le problème ne pourra se traiter que par VBA si tu as quelques notions
    0
    1. Oui, je sais que c'est beaucoup :P Je crois que je vais m'en sortir autrement.

      J'aurais cru qu'il y aurait peut-être eu une fonction un peu comme CELLULE(Adresse;A1).
      Genre PLAGE(Nom;A1;E1). Je devrais écrire à Microsoft pour leur suggérer mon idée :P

      Merci quand même!
      0
    2. Bonjour,

      Tu peux tester cette macro
      Sub Nom_Plage()
      Dim N As Name
      For Each N In ActiveWorkbook.Names
      Range(N.RefersTo)(Range(N.RefersTo).Count).Value = N.Name
      Next N
      End Sub

      A+
      0
  3. Re,

    ou pour ceux que ça peut intéresser ce code liste les plages nommée dans l'exemple ceux de la feuille nommée "Feuil1" et liste colonne A et lien hypertexte vers les plages nommées colonne C

    Sub NomsPlages_Sur_Feuilles()
    Dim M As Name
    Dim PlageNom As Range
    Dim i As Byte
    Dim NumLigne As Byte
    NumLigne = 1 '------------------------------------ =1 équivat ligne 1
    On Error Resume Next
    For Each M In Worksheets("Feuil1").Parent.Names
    Set PlageNom = Nothing
    Set PlageNom = M.RefersToRange
    If Not PlageNom Is Nothing Then
    If Worksheets("Feuil1").Index = PlageNom.Worksheet.Index Then
    Cells(NumLigne, 1) = M.Name '----------------1) équivaut colonne A
    '---------------------------- crée lien hypertexte vers plages nommées
    Worksheets("Feuil1").Hyperlinks.Add Anchor:=Cells(NumLigne, 3), _
    Address:="", SubAddress:=M.RefersToRange.Address(external:=True)
    NumLigne = NumLigne + 1
    End If
    End If
    Next M
    End Sub
    0
    1. Bonjour,

      Fonction affichant les noms de champ d'un classeur. La fonction est mise à jour dynamiquement.

      Function ListeNoms()
      Application.Volatile
      Dim n As Name
      Dim a()
      ReDim a(1 To Application.Caller.Rows.Count, 1 To 2)
      i = 1
      For Each n In ActiveWorkbook.Names
      a(i, 1) = n.Name
      a(i, 2) = n
      i = i + 1
      Next n
      ListeNoms = a
      End Function

      Sélectionner A2:B10
      =listenoms()
      Valider avec maj+ctrl+entrée

      https://www.cjoint.com/c/CKEqhatXs8o

      Jacques Boisgontier
      0