- 08/14/2019
- 9 minutos para leer
-
- o
- M
- L
- m
- O
-
+4
Representa una celda, una fila, una columna, una selección de las células que contienen uno o más bloques contiguos de las células, o un 3D de gama.,
Nota
¿está interesado en desarrollar soluciones que amplíen la experiencia de oficina a través de múltiples plataformas? Echa un vistazo al nuevo modelo de complementos de Office. Los complementos de Office ocupan poco espacio en comparación con los complementos y soluciones de VSTO, y puede crearlos utilizando casi cualquier tecnología de programación web, como HTML5, JavaScript, CSS3 y XML.
observaciones
El miembro predeterminado de Range reenvía las llamadas sin parámetros a la propiedad Value y las llamadas con parámetros al miembro Item., Accordingly, someRange = someOtherRange
is equivalent to someRange.Value = someOtherRange.Value
, someRange(1)
to someRange.Item(1)
and someRange(1,1)
to someRange.Item(1,1)
.,
las siguientes propiedades y métodos para devolver un objeto de rango se describen en la sección Ejemplo:
- propiedades de rango y celdas del objeto de la hoja de trabajo
- propiedades de rango y celdas del objeto de rango
- propiedades de filas y columnas del objeto de la hoja de trabajo
- propiedades de filas y columnas del objeto de rango
- propiedad Offset del objeto de rango
- Método de unión del objeto de aplicación
ejemplo
Use range (ARG), donde ARG nombra el rango, para devolver un objeto de rango que representa una sola celda o un rango de celdas., El siguiente ejemplo coloca el valor de la celda A1 en la celda A5.
Worksheets("Sheet1").Range("A5").Value = _ Worksheets("Sheet1").Range("A1").Value
el siguiente ejemplo llena el rango A1:H8 con números aleatorios estableciendo la fórmula para cada celda en el rango. Cuando se usa sin un calificador de objeto (un objeto a la izquierda del punto), la propiedad Range devuelve un rango en la hoja activa. Si la hoja activa no es una hoja de trabajo, el método falla.
Use el método Activate del objeto Worksheet para activar una hoja de trabajo antes de usar la propiedad Range sin un calificador de objeto explícito.,
Worksheets("Sheet1").Activate Range("A1:H8").Formula = "=Rand()" 'Range is on the active sheet
el siguiente ejemplo borra el contenido del rango denominado Criteria.
Nota
si usa un argumento de texto para la dirección del rango, debe especificar la dirección en notación de estilo A1 (no puede usar notación de estilo R1C1).
Worksheets(1).Range("Criteria").ClearContents
Use celdas en una hoja de trabajo para obtener un rango que consiste en todas las celdas individuales en la hoja de trabajo. Puede acceder a celdas individuales a través de Elemento (fila, columna), donde fila es el índice de fila y columna es el índice de columna.,Item se puede omitir ya que la llamada es reenviada por el miembro predeterminado del rango.El siguiente ejemplo establece el valor de la celda A1 en 24 y de la celda B1 en 42 en la primera hoja del libro activo.
Worksheets(1).Cells(1, 1).Value = 24Worksheets(1).Cells.Item(1, 2).Value = 42
el siguiente ejemplo establece la fórmula para la celda A2.
ActiveSheet.Cells(2, 1).Formula = "=Sum(B1:B5)"
aunque también puede usar Range("A1")
para devolver la celda A1, puede haber ocasiones en que la propiedad Cells sea más conveniente porque puede usar una variable para la fila o columna. El siguiente ejemplo crea encabezados de columna y fila en Sheet1., Tenga en cuenta que después de activar la hoja de trabajo, la propiedad Cells se puede usar sin una declaración de hoja explícita (devuelve una celda en la hoja activa).
Nota
aunque puede utilizar las funciones de cadena de Visual Basic para alterar las referencias de estilo A1, es más fácil (y mejor práctica de programación) utilizar la notación Cells(1, 1)
.
Use_expression_.Celdas, donde expresión es una expresión que devuelve un objeto rango, para obtener un rango con la misma dirección que consiste en celdas individuales.,En tal rango, se accede a celdas individuales a través de Elemento (fila, columna), donde están relativas a la esquina superior izquierda de la primera área del rango.Item se puede omitir ya que la llamada es reenviada por el miembro predeterminado del rango.El siguiente ejemplo establece la fórmula para las celdas C5 y D5 de la primera hoja del libro activo.
Worksheets(1).Range("C5:C10").Cells(1, 1).Formula = "=Rand()"Worksheets(1).Range("C5:C10").Cells.Item(1, 2).Formula = "=Rand()"
Use Range (cell1, cell2), donde cell1 y cell2 son objetos de rango que especifican las celdas de inicio y fin, para devolver un objeto de rango. El siguiente ejemplo establece el estilo de línea de borde para las celdas A1:J10.,
Note
tenga en cuenta que el punto delante de cada ocurrencia de la propiedad Cells es necesario si el resultado de la instrucción With anterior se va a aplicar a la propiedad Cells. En este caso, indica que las celdas están en la hoja de trabajo uno (sin el punto, la propiedad celdas devolvería celdas en la hoja activa).
With Worksheets(1) .Range(.Cells(1, 1), _ .Cells(10, 10)).Borders.LineStyle = xlThick End With
utilice filas en una hoja de trabajo para obtener un rango que consiste en todas las filas de la hoja de trabajo. Puede acceder a filas individuales a través de Item (row), donde row es el índice de filas.,Item se puede omitir ya que la llamada es reenviada por el miembro predeterminado del rango.
Nota
no es legal proporcionar el segundo parámetro de Elemento para rangos que consisten en filas. Primero tiene que convertirlo a celdas individuales a través de celdas.
el siguiente ejemplo elimina las filas 4 y 10 de la primera hoja del libro activo.
Worksheets(1).Rows(10).DeleteWorksheets(1).Rows.Item(5).Delete
Use columnas en una hoja de trabajo para obtener un rango que consiste en todas las columnas de la hoja de trabajo., Puede acceder a columnas individuales a través de Elemento (fila), donde fila es el índice de columna dado como un número o como una dirección de columna de estilo A1.Item se puede omitir ya que la llamada es reenviada por el miembro predeterminado del rango.
Nota
no es legal proporcionar el segundo parámetro de Elemento para rangos que consisten en columnas. Primero tiene que convertirlo a celdas individuales a través de celdas.
el siguiente ejemplo elimina las columnas «B», «C», «E» y » J » de la primera hoja del libro activo.
Use_expression_.,Filas, donde expresión es una expresión que devuelve un objeto rango, para obtener un rango que consiste en las filas en la primera área del rango.Puede acceder a filas individuales a través de Item (row), donde row es el índice de fila relativo desde la parte superior de la primera área del rango.Item se puede omitir ya que la llamada es reenviada por el miembro predeterminado del rango.
Nota
no es legal proporcionar el segundo parámetro de Elemento para rangos que consisten en filas. Primero tiene que convertirlo a celdas individuales a través de celdas.,
el siguiente ejemplo elimina los rangos C8: D8 y C6: D6 de la primera hoja del libro activo.
Worksheets(1).Range("C5:D10").Rows(4).DeleteWorksheets(1).Range("C5:D10").Rows.Item(2).Delete
Use_expression_.Columnas, donde expresión es una expresión que devuelve un objeto rango, para obtener un rango que consiste en las columnas en la primera área del rango.Puede acceder a columnas individuales a través de Elemento (fila), donde fila es el índice de columna relativo de la izquierda de la primera área del rango dado como un número o como una dirección de columna de estilo A1.Item se puede omitir ya que la llamada es reenviada por el miembro predeterminado del rango.,
Nota
no es legal proporcionar el segundo parámetro de Elemento para rangos que consisten en columnas. Primero tiene que convertirlo a celdas individuales a través de celdas.
el siguiente ejemplo elimina los rangos L2: L10, G2:G10, F2:F10 y D2: D10 de la primera hoja del libro activo.
Use desplazamiento (fila, columna), donde fila y columna son los desplazamientos de fila y columna, para devolver un rango en un desplazamiento especificado a otro rango., El siguiente ejemplo selecciona la celda tres filas abajo y una columna a la derecha de la celda en la esquina superior izquierda de la selección actual. No puede seleccionar una celda que no esté en la hoja activa, por lo que primero debe activar la hoja de trabajo.
Worksheets("Sheet1").Activate 'Can't select unless the sheet is active Selection.Offset(3, 1).Range("A1").Select
Use Union (rango 1, Rango 2, …) para devolver rangos de áreas múltiples, es decir, rangos compuestos por dos o más bloques contiguos de celdas. El siguiente ejemplo crea un objeto definido como la Unión de los rangos A1:B2 y C3:D4 y, a continuación, selecciona el rango definido.,
si trabaja con selecciones que contienen más de un área, la propiedad Areas es útil. Divide una selección de varias áreas en objetos de rango individuales y luego devuelve los objetos como una colección. Puede usar la propiedad Count de la colección devuelta para verificar una selección que contenga más de un área, como se muestra en el siguiente ejemplo.
Sub NoMultiAreaSelection() NumberOfSelectedAreas = Selection.Areas.Count If NumberOfSelectedAreas > 1 Then MsgBox "You cannot carry out this command " & _ "on multi-area selections" End If End Sub
este ejemplo utiliza el método AdvancedFilter del objeto Range para crear una lista de los valores únicos, y el número de veces que se producen esos valores únicos, en el rango de la columna A.,Elemento
Leave a Reply