Propriété Range.Item (Excel)

Cette propriété renvoie un objetRange qui représente une plage décalée par rapport à la plage spécifiée.

Syntaxe

expression. Item (RowIndex, ColumnIndex)

expression Variable représentant un objet Range.

Paramètres

Nom Requis/Facultatif Type de données Description
RowIndex Obligatoire Variant Si le deuxième argument est fourni, numéro de ligne relatif de la cellule à retourner.

Si le deuxième argument n’est pas fourni, index de la sous-plage à retourner.
ColumnIndex Facultatif Variant Numéro de colonne relatif de la cellule à retourner.

Remarques

Si expression n’est pas une plage contenant une collection de cellules uniques, par exemple, parce que est obtenu via le membre Columns , si le deuxième argument est illégal, une erreur 1004 est générée.

Le membre par défaut de Range transfère les appels avec des paramètres au membre Item . Par conséquent, someRange(1) et someRange(1,1) sont équivalents à someRange.Item(1) et someRange.Item(1,1), respectivement.

Les arguments RowIndex et ColumnIndex sont des décalages relatifs de base 1 par rapport à la cellule supérieure gauche de la première zone de la plage retournée par le membre Areas , c’est-à-dire que pour la plage Union(someSheet.Range("Z4:AA6"), someSheet.Range("A1:C3")), Item(1,1) retourne la plage avec l’adresse $Z$4.

ColumnIndex peut être fourni sous forme d’index numérique ou de chaîne d’adresse de colonne comme dans la notation A1, c’est-à-dire "A" qu’il fait référence à l’index 1 numérique et "AA" à 27.

Il est possible de référencer des cellules en dehors de la plage d’origine à l’aide de la propriété Item en fournissant les arguments appropriés, par exemple Item(3,3) , retourne la cellule à "D4" pour la plage someSheet.Range("B2:C3").

La plage retournée lors de la fourniture d’un seul paramètre dépend de la nature de la plage :

  • Pour les plages composées de cellules uniques, comme retourné par les membres Cells et Range , Item renvoie des cellules uniques. Le paramètre RowIndex fait référence à l’index lors de l’énumération de la première zone de la plage de gauche à droite plutôt que de haut en bas, comme pour les tableaux à deux dimentionals. Si RowIndex est plus grand que le nombre de cellules de la première zone de la plage, l’énumération est comme si la zone était étendue vers le bas.

  • Pour les plages composées de plages de lignes, comme retourné par Lignes, Item renvoie des plages de lignes. Le paramètre RowIndex est le décalage de base 1 de la première ligne de la plage dans la direction de haut en bas.

  • Pour les plages composées de plages de colonnes, comme retourné par Colonnes, l’élément retourne des plages de colonnes. Le paramètre RowIndex est le décalage de base 1 de la première colonne dans la direction de gauche à droite. Dans ce cas, l’index peut également être fourni sous forme de chaîne d’adresse de colonne.

Exemple

L’exemple suivant montre quelle cellule est retournée si les deux paramètres sont fournis.

Public Sub PrintAdresses()
   Dim exampleRange As Excel.Range
   With ThisWorkbook.Worksheets("ExampleSheet")
      Set exampleRange = Application.Union(.Range("B2:D4"), .Range("A1"), .Range("Z1:AA20"))
   End With
  
   Debug.Print exampleRange.Item(1,1).Address      'Prints "$B$2"
   Debug.Print exampleRange.Item(2,4).Address      'Prints "$E$3"
   Debug.Print exampleRange.Item(20,40).Address    'Prints "$AO$21"
   Debug.Print exampleRange.Item(2,"D").Address    'Prints "$E$3"
   Debug.Print exampleRange.Item(20,"AN").Address  'Prints "$E$3"
End Sub

L’exemple suivant montre pour différents types de plages quelles sous-plages sont retournées si un seul paramètre est fourni.

Public Sub PrintAdresses()
   Dim exampleRange As Excel.Range
   With ThisWorkbook.Worksheets("ExampleSheet")
      Set exampleRange = Application.Union(.Range("B2:D4"), .Range("A1"), .Range("Z1:AA20"))
   End With

   Debug.Print exampleRange.Cells.Item(1).Address      'Prints "$B$2"
   Debug.Print exampleRange.Cells.Item(2).Address      'Prints "$C$2"
   Debug.Print exampleRange.Cells.Item(4).Address      'Prints "$B$3"
   Debug.Print exampleRange.Cells.Item(10).Address     'Prints "$B$5"
  
   Debug.Print exampleRange.Rows.Item(1).Address       'Prints "$B$2:$D$2"
   Debug.Print exampleRange.Rows.Item(10).Address      'Prints "$B$11:$D$11"
  
   Debug.Print exampleRange.Columns.Item(1).Address    'Prints "$B$2:$B$4"
   Debug.Print exampleRange.Columns.Item(10).Address   'Prints "$K$2:$K$4"
   Debug.Print exampleRange.Columns.Item("A").Address  'Prints "$B$2:$B$4"
   Debug.Print exampleRange.Columns.Item("J").Address  'Prints "$K$2:$K$4"
End Sub

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.