VBA Excel définir un nom d'une plage

Résolu
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
Configuration: Windows XP
Firefox 3.0.3

3 réponses

  1. Contributeur
    Bonjour,

    Range("A2", Range("A2").End(xlDown).End(xlToRight)).Select
    Names.Add Name:="toto", RefersTo:="=" & ActiveSheet.Name & "!" & Selection.Address
    9
    1. Contributeur
      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
      1. merci beaucoup ; ça marche parfaitement
        0