Compartilhar via


Propriedade Range.Item (Excel)

Retorna um objeto Intervalo que representa um intervalo deslocado do intervalo especificado.

Sintaxe

expressão. Item (RowIndex, ColumnIndex)

expressão Uma variável que representa um objeto de Intervalo.

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
RowIndex Obrigatório Variant Se for fornecido o segundo argumento, o número de linha relativo da célula a devolver.

Se o segundo argumento não for fornecido, o índice da sub-reorganização a devolver.
ColumnIndex Opcional Variant O número relativo da coluna da célula a devolver.

Comentários

Se a expressão não for um intervalo que contenha uma coleção de células individuais, por exemplo, porque foi obtido através do membro Colunas , desde que o segundo argumento seja ilegal e resultará num erro 1004.

O membro predefinido do Intervalo reencaminha chamadas com parâmetros para o membro item . Assim, someRange(1) e someRange(1,1) são equivalentes a someRange.Item(1) e someRange.Item(1,1), respetivamente.

Os argumentos RowIndex e ColumnIndex são desvios relativos baseados em 1 para a célula superior esquerda da primeira área do intervalo, conforme devolvido pelo membro Áreas , ou seja, para o intervalo Union(someSheet.Range("Z4:AA6"), someSheet.Range("A1:C3")), Item(1,1) devolverá o intervalo com endereço $Z$4.

O ColumnIndex pode ser fornecido como um índice numérico ou como uma cadeia de endereço de coluna como na notação A1, ou seja "A" , refere-se ao índice 1 numérico e "AA" a 27.

É possível referenciar células fora do intervalo original com a propriedade Item ao fornecer argumentos adequados, por exemplo Item(3,3) , devolverá a célula em "D4" para o intervalo someSheet.Range("B2:C3").

O intervalo devolvido ao fornecer apenas um parâmetro depende da natureza do intervalo:

  • Para intervalos que consistem em células individuais, conforme devolvido pelos membros de Células e Intervalo , Item devolve células individuais. O parâmetro RowIndex refere-se ao índice ao enumerar a primeira área do intervalo da esquerda para a direita do que de cima para baixo, como para matrizes de dois dimentais. Se RowIndex for maior do que o número de células na primeira área do intervalo, a enumeração será expandida para baixo.

  • Para intervalos que consistem em intervalos de linhas, conforme devolvido por Linhas, Item devolve intervalos de linhas. O parâmetro RowIndex é o desvio baseado em 1 da primeira linha do intervalo na direção de cima para baixo.

  • Para intervalos que consistem em intervalos de colunas, conforme devolvido por Colunas, Item devolve intervalos de colunas. O parâmetro RowIndex é o desvio baseado em 1 da primeira coluna na direção da esquerda para a direita. Nesta situação, o índice pode, em alternativa, ser fornecido como uma cadeia de endereço de coluna.

Exemplo

O exemplo seguinte mostra que célula é devolvida se ambos os parâmetros forem fornecidos.

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 "$AO$21"
End Sub

O exemplo seguinte mostra diferentes tipos de intervalos que são devolvidos se for fornecido apenas um parâmetro.

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

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.