VBA Excel définir un nom d'une plage

Résolu
ptiramissu -  
 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
A voir également:

3 réponses

michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
Bonjour,

Range("A2", Range("A2").End(xlDown).End(xlToRight)).Select
Names.Add Name:="toto", RefersTo:="=" & ActiveSheet.Name & "!" & Selection.Address
9
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

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

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