Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Devuelve un objeto Range que representa un rango desplazado con respecto al rango especificado.
Sintaxis
más sencilla.Elemento (RowIndex, ColumnIndex)
expresión Variable que representa un objeto Range.
Parameters
| Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
|---|---|---|---|
| RowIndex | Obligatorio | Variant | Si se proporciona el segundo argumento, el número de fila relativo de la celda que se va a devolver. Si no se proporciona el segundo argumento, el índice del subrango a devolver. |
| ColumnIndex | Opcional | Variant | Número de columna relativo de la celda que se va a devolver. |
Comentarios
Si la expresión no es un rango que contiene una colección de celdas individuales, por ejemplo, porque se ha obtenido a través del miembro Columnas , proporcionar el segundo argumento es ilegal y producirá un error 1004.
El miembro predeterminado de Rango reenvía llamadas con parámetros al miembro Elemento . Por lo tanto, someRange(1) y someRange(1,1) son equivalentes a someRange.Item(1) y someRange.Item(1,1), respectivamente.
Los argumentos RowIndex y ColumnIndex son desplazamientos relativos basados en 1 a la celda superior izquierda de la primera área del rango devuelto por el miembro Áreas , es decir, para el rango Union(someSheet.Range("Z4:AA6"), someSheet.Range("A1:C3")), Item(1,1) devolverá el rango con dirección $Z$4.
ColumnIndex se puede proporcionar como un índice numérico o como una cadena de dirección de columna como en la notación A1, es decir"A", se refiere al índice 1 numérico y "AA" a 27.
Es posible hacer referencia a celdas fuera del rango original con la propiedad Item proporcionando los argumentos adecuados, por ejemplo Item(3,3) , devolverá la celda en "D4" para el rango someSheet.Range("B2:C3").
El rango devuelto al proporcionar solo un parámetro depende de la naturaleza del rango:
Para los rangos formados por celdas individuales, devueltos por las celdas y los miembros del rango , Elemento devuelve celdas individuales. El parámetro RowIndex hace referencia al índice cuando se enumera la primera área del rango de izquierda a derecha que de arriba a abajo, como en el caso de las matrices de dos dimensiones. Si RowIndex es mayor que el número de celdas de la primera área del rango, la enumeración como si el área se extendiera hacia abajo.
Para los rangos formados por rangos de filas, como devuelven las filas, el elemento devuelve rangos de filas. El parámetro RowIndex es el desplazamiento basado en 1 desde la primera fila del rango en la dirección de arriba a abajo.
Para los rangos formados por rangos de columnas, como devuelve Columnas, el elemento devuelve rangos de columnas. El parámetro RowIndex es el desplazamiento basado en 1 desde la primera columna en la dirección de izquierda a derecha. En esta situación, el índice también se puede proporcionar como una cadena de dirección de columna.
Ejemplo
En el ejemplo siguiente se muestra qué celda se devuelve si se proporcionan ambos parámetros.
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
En el ejemplo siguiente se muestran diferentes tipos de rangos qué subrangos se devuelven si solo se proporciona un 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
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.