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

Récupérer noms cellules dans variable[RESOLU]

cp4

XLDnaute Barbatruc

Pièces jointes

  • Cellules nommées.xlsm
    10.7 KB · Affichages: 12

D.D.

XLDnaute Impliqué
Hello

D'abord un
ActiveWorksheet.names.count
te donne le nombre de cellules nommées
puis
ActiveWorkbook.Names.Item (xxxx)
te donne l'adresse de chaque et
ActiveWorkbook.Names.Item (xxxx).Name
te donne son nom.
 

pierrejean

XLDnaute Barbatruc
Bonjour cp4

salut DD
pour aller un peu plus loin:

Code:
Sub test()
ReDim tabnom(2, 0)
For Each celnommée In Application.Names
  tabnom(1, UBound(tabnom, 2)) = celnommée.RefersTo
  tabnom(2, UBound(tabnom, 2)) = celnommée.Name
  ReDim Preserve tabnom(2, UBound(tabnom, 2) + 1)
Next
For n = LBound(tabnom, 2) To UBound(tabnom, 2) - 1
   MsgBox (tabnom(2, n) & "  " & tabnom(1, n))
Next
End Sub
 

cp4

XLDnaute Barbatruc
@D.D. , @pierrejean ,

Tous mes remerciements. C'est parfait.

edit: une question à Pierrejean, tabnom(1, UBound(tabnom, 2)) = celnommée.RefersTo contient l'adresse de la cellule nommée, c-à-d nom de la feuille suivi de l'adresse de la cellule.
Comment avoir l'index de la feuille ou le (name) de la feuille? Merci beaucoup.
 
Dernière édition:

job75

XLDnaute Barbatruc
Bonsoir cp4, D.D., Pierre,
Comment avoir l'index de la feuille ou le (name) de la feuille?
Code:
Sub Test1()
Dim nom As Name, mes$
For Each nom In ThisWorkbook.Names
If TypeName(Evaluate(nom.RefersTo)) = "Range" Then mes = mes & vbLf & nom.Name & " => " & Evaluate(nom.RefersTo).Parent.Name
Next
MsgBox Mid(mes, 2)
End Sub
 

cp4

XLDnaute Barbatruc
Bonjour Job75,

C'est parfait, comme à l'accoutumé.
Tous mes remerciements.
 

Discussions similaires

C
Réponses
41
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…