Bruce a une plage nommée (compte) définie dans un classeur et il se demande comment accéder et utiliser cette plage nommée à partir d’une macro. Il existe plusieurs façons d’accéder à la plage, à l’aide de l’objet Range ou de la collection Names.

Pour accéder à la plage nommée à l’aide de l’objet Range, il vous suffit de fournir le nom de la plage en tant que paramètre de l’objet. Ce nom est le même que celui que vous avez défini dans Excel. Par exemple, la ligne suivante pourrait être utilisée pour changer la couleur intérieure de toute la gamme:

Worksheets("Sheet1").Range("Account").Interior.Color = vbYellow

Notez que l’objet Range est utilisé par rapport à une feuille de calcul particulière, dans ce cas Sheet1. Vous pouvez également définir un objet de plage dans VBA, puis l’assigner pour qu’il soit égal à la plage nommée, de cette manière:

Set rng = Worksheets("Sheet1").Range("Account")

L’autre méthode d’utilisation de la plage nommée consiste à utiliser la collection Names. La ligne suivante définira à nouveau la couleur intérieure de la plage sur jaune:

Workbooks("Book1.xls").Names("Account").RefersToRange.Interior.Color = vbYellow

Notez que la collection Names est relative à l’ensemble du classeur, il n’est donc pas nécessaire de savoir à quelle feuille de calcul la plage nommée est associée lorsque vous utilisez cette méthode d’accès. Vous pouvez également définir un objet de plage dans VBA et lui affecter le même que la plage nommée:

Set rng = Workbooks("Book1.xls").Names("Account").RefersToRange

Vous devez savoir que la méthode de collection Names pour accéder à une plage nommée ne sera viable que si vous n’avez pas la même plage nommée définie sur différentes feuilles de calcul du classeur. Si vous le faites, vous devrez utiliser la méthode d’objet Range, qui nécessite l’utilisation d’un nom de feuille de calcul spécifique dans la référence.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (3106) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:

link: / excelribbon-Using_Named_Ranges_in_a_Macro [Utilisation des plages nommées dans une macro].