VBA Excel définir un nom d'une plage [Résolu/Fermé]

Signaler
-
 ptiramissu -
Bonjour,

je souhaite attribuer le nom "toto" à une plage dans Excel. La procédure VBA marche très bien lorsque je précise le nom de l'onglet du classeur Excel dans VBA. Par exemple, si l'onglet s'appelle "azerty", la proc suivante marche parfaitement :

Range("A2", Range("A2").End(xlDown).End(xlToRight)).Select
Names.Add Name:="toto", RefersTo:="=azerty!" & Selection.Address

Mais je ne sais pas pourquoi la procédure ne fonctionne pas si le nom de l'onglet n'est pas précisé (je voudrais éviter de modifier la procédure à chaque fois que je la lance sur des feuilles qui n'ont pas toujours le même nom.


Range("A2", Range("A2").End(xlDown).End(xlToRight)).Select
Names.Add Name:="toto", RefersTo:="=ActiveSheet!" & Selection.Address


Merci pour votre aide

Ptiramissu

3 réponses

Messages postés
16174
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
6 août 2020
3 000
Bonjour,

Range("A2", Range("A2").End(xlDown).End(xlToRight)).Select
Names.Add Name:="toto", RefersTo:="=" & ActiveSheet.Name & "!" & Selection.Address
9
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 56935 internautes nous ont dit merci ce mois-ci

Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 106
bonjour

Pour fonctionner avec des espaces dans le nom de la feuille ne pas oublier '

Names.Add Name:="toto", RefersTo:="='" & ActiveSheet.Name & "'!" & Selection.Address
merci beaucoup ; ça marche parfaitement