El objeto Range , que es la representación de una celda (o celdas) en su hoja de trabajo, es el objeto más importante de Excel VBA . Este capítulo ofrece una descripción general de las propiedades y métodos del objeto Range. Las propiedades son algo que tiene un objeto (describen el objeto), mientras que los métodos hacen algo (realizan una acción con un objeto).
Coloque un botón de comando en su hoja de trabajo y agregue la siguiente línea de código:
Range("B3").Value = 2
Resultado al hacer clic en el botón de comando en la hoja:
Código:
Range("A1:A4").Value = 5
Resultado:
Código:
Range("A1:A2,B3:C4").Value = 10
Resultado:
Nota: para hacer referencia a un rango con nombre en su código de Excel VBA, use una línea de código como esta:
Range("Prices").Value = 15
En lugar de Rango, también puede usar Celdas. Uso de células es particularmente útil cuando se desea bucle a través de rangos.
Código:
Cells(3, 2).Value = 2
Resultado:
Explicación: Excel VBA ingresa el valor 2 en la celda en la intersección de la fila 3 y la columna 2.
Código:
Range(Cells(1, 1), Cells(4, 1)).Value = 5
Resultado:
Puede declarar un objeto Range utilizando las palabras clave Dim y Set.
Código:
Dim example As Range
Set example = Range("A1:C4")
example.Value = 8
Resultado:
Un método importante del objeto Range es el método Select. El método Seleccionar simplemente selecciona un rango.
Código:
Dim example As Range
Set example = Range("A1:C4")
example.Select
Resultado:
Nota: para seleccionar celdas en una hoja de trabajo diferente, primero debe activar esta hoja. Por ejemplo, las siguientes líneas de código seleccionan la celda B7 en la tercera hoja de trabajo de la izquierda.
Worksheets(3).Activate
Worksheets(3).Range("B7").Select
La propiedad Rows da acceso a una fila específica de un rango.
Código:
Dim example As Range
Set example = Range("A1:C4")
example.Rows(3).Select
Resultado:
Nota: borde solo para ilustración.
La propiedad Columns da acceso a una columna específica de un rango.
Código:
Dim example As Range
Set example = Range("A1:C4")
example.Columns(2).Select
Resultado:
Nota: borde solo para ilustración.
El método Copiar y Pegar se usa para copiar un rango y pegarlo en otro lugar de la hoja de trabajo.
Código:
Range("A1:A2").Select
Selection.Copy
Range("C3").Select
ActiveSheet.Paste
Resultado:
Aunque esto está permitido en Excel VBA, es mucho mejor usar la línea de código a continuación que hace exactamente lo mismo.
Rango ("C3: C4"). Valor = Rango ("A1: A2"). Valor
Para borrar el contenido de un rango de Excel, puede utilizar el método ClearContents.
Range("A1").ClearContents
o simplemente usa:
Range("A1").Value = ""
Nota: utilice el método Clear para borrar el contenido y el formato de un rango. Utilice el método ClearFormats para borrar solo el formato.
Con la propiedad Count, puede contar el número de celdas, filas y columnas de un rango.
Nota: borde solo para ilustración.
Código:
Dim example As Range
Set example = Range("A1:C4")
MsgBox example.Count
Resultado:
Código:
Dim example As Range
Set example = Range("A1:C4")
MsgBox example.Rows.Count
Resultado:
Nota: de manera similar, puede contar el número de columnas de un rango.
14/1 Completado! Más información sobre el objeto de rango>
Siguiente capítulo: Variables