Créer un accès et copier les plages nommées

Introduction

Normalement, les étiquettes de colonnes et de lignes sont utilisées pour faire référence à des cellules individuelles. Il est possible de créer des noms descriptifs pour représenter des cellules, des plages de cellules, des formules ou des valeurs constantes. Le mot nom peut faire référence à une chaîne de caractères représentant une cellule, une plage de cellules, une formule ou une valeur constante. Assigner un nom à une plage signifie que cette plage de cellules peut être référencée par son nom. Utilisez des noms faciles à comprendre, comme Produits, pour faire référence à des plages difficiles à comprendre, comme Ventes!C20:C30. Les étiquettes peuvent être utilisées dans les formules qui font référence aux données sur la même feuille de calcul; si vous souhaitez représenter une plage sur une autre feuille de calcul, vous pouvez utiliser un nom. Les plages nommées figurent parmi les fonctionnalités les plus puissantes de Microsoft Excel, notamment lorsqu’elles sont utilisées comme plage source pour les contrôles de liste, les tableaux croisés dynamiques, les graphiques, etc.

Travailler avec les plages nommées en utilisant Microsoft Excel

Créer des plages nommées

Les étapes suivantes décrivent comment attribuer un nom à une cellule ou à une plage de cellules à l’aide d'MS Excel. Cette méthode s’applique à Microsoft Office Excel 2003, Microsoft Excel 97, 2000 et 2002.

  1. Sélectionnez la cellule ou la plage de cellules que vous souhaitez nommer.
  2. Cliquez sur la Zone de nom située à l’extrémité gauche de la barre de formule.
  3. Saisissez le nom des cellules.
  4. Appuyez sur ENTRÉE.

Travailler avec la plage nommée en utilisant Aspose.Cells

Ici, nous utilisons l’API Aspose.Cells pour effectuer la tâche. Aspose.Cells fournit une classe, Workbook qui représente un fichier Microsoft Excel. La classe Workbook contient une collection Worksheets qui permet d’accéder à chaque feuille de calcul dans un fichier Excel. Une feuille de calcul est représentée par la classe Worksheet. La classe Worksheet fournit une collection Cells.

Créer une plage nommée

Il est possible de créer une plage nommée en appelant la méthode surchargée CreateRange de la collection Cells. Une version typique de la méthode CreateRange prend les paramètres suivants :

  • Nom de la cellule en haut à gauche, nom de la cellule en haut à gauche dans la plage.
  • Nom de la cellule inférieure droite, le nom de la cellule inférieure droite de la plage.

Lorsque la méthode CreateRange est appelée, elle renvoie la plage nouvellement créée en tant qu’instance de la classe Range. Utilisez cet objet Range pour configurer la plage nommée. Par exemple, définissez le nom de la plage en utilisant la propriété Name. L’exemple suivant montre comment créer une plage nommée de cellules qui s’étend de B4 à G14.

Saisir des données dans les cellules de la plage nommée

Vous pouvez insérer des données dans les cellules individuelles d’une plage en suivant le modèle

  • C#: Range[row,column]
  • VB: Range(row,column)

Disons que vous avez une plage nommée de cellules qui s’étend de A1 à C4. La matrice comprend 4 * 3 = 12 cellules. Les cellules individuelles de la plage sont disposées séquentiellement : Plage[0,0], Plage[0,1], Plage[0,2], Plage[1,0], Plage[1,1], Plage[1,2], Plage[2,0], Plage[2,1], Plage[2,2], Plage[3,0], Plage[3,1], Plage[3,2].

Utilisez les propriétés suivantes pour identifier les cellules dans la plage :

  • La propriété FirstRow renvoie l’index de la première ligne de la plage nommée.
  • La propriété FirstColumn renvoie l’index de la première colonne de la plage nommée.
  • La propriété RowCount renvoie le nombre total de lignes dans la plage nommée.
  • La propriété ColumnCount renvoie le nombre total de colonnes dans la plage nommée.

L’exemple suivant montre comment saisir certaines valeurs dans les cellules d’une plage spécifiée.

Identifier les cellules dans la plage nommée

Vous pouvez insérer des données dans les cellules individuelles d’une plage en suivant le schéma :

  • C#: Range[row,column]
  • VB: Range(row,column)

Si vous avez une plage nommée qui s’étend de A1 à C4, la matrice contient 4 * 3 = 12 cellules. Les cellules individuelles de la plage sont disposées séquentiellement : Plage[0,0], Plage[0,1], Plage[0,2], Plage[1,0] ,Plage[1,1], Plage[1,2], Plage[2,0], Plage[2,1], Plage[2,2], Plage[3,0], Plage[3,1], Plage[3,2].

Utilisez les propriétés suivantes pour identifier les cellules dans la plage :

  • La propriété FirstRow renvoie l’index de la première ligne de la plage nommée.
  • La propriété FirstColumn renvoie l’index de la première colonne de la plage nommée.
  • La propriété RowCount renvoie le nombre total de lignes dans la plage nommée.
  • La propriété ColumnCount renvoie le nombre total de colonnes dans la plage nommée.

L’exemple suivant montre comment saisir certaines valeurs dans les cellules d’une plage spécifiée.

Accéder aux plages nommées

Accéder à une plage nommée spécifique

Appelez la méthode GetRangeByName de la collection Worksheets pour obtenir une plage par le nom spécifié. Une méthode GetRangeByName typique prend le nom de la plage nommée et renvoie la plage nommée spécifiée en tant qu’instance de la classe Range. L’exemple suivant montre comment accéder à une plage spécifiée par son nom.

Accéder à toutes les plages nommées dans une feuille de calcul

Appelez la méthode GetNamedRanges de la collection Worksheet pour obtenir toutes les plages nommées dans une feuille de calcul. La méthode GetNamedRanges renvoie un tableau de toutes les plages nommées dans la collection Worksheets.

L’exemple suivant montre comment accéder à toutes les plages nommées dans un classeur.

Copier les plages nommées

Aspose.Cells fournit la méthode Range.Copy() pour copier une plage de cellules avec mise en forme dans une autre plage.

L’exemple suivant montre comment copier une plage source de cellules dans une autre plage nommée.