Objeto de Excel VBA Rango
Rango Ejemplos | células | Declarar un objeto Range | Seleccionar | Filas | Columnas | Copy / Paste | Borrar | Conde
El objeto Range, que es la representación de una célula (o células) en su hoja de trabajo, es el objeto más importante de Excel VBA. En este capítulo se ofrece un resumen de las propiedades y métodos del objeto Range. Las propiedades son cosa que un objeto tiene (que describen el objeto), mientras que los métodos hacen algo (que llevan a cabo una acción con un objeto).
Los ejemplos van
Coloque un enlace: / VBA crear a un macro-#-botón de comando [botón de comando]
en su hoja de trabajo y añadir la siguiente línea de código:
Range("B3").Value = 2
Como 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 el código VBA de Excel, utilice una línea de código como este:
Range("Prices").Value = 15
Las células
En lugar de la gama, también se pueden utilizar células. Uso de células es particularmente útil cuando se desea enlace: / VBA-bucle [lazo]
a través de rangos.
Código:
Cells(3, 2).Value = 2
Resultado:
Explicación: Excel VBA introduce el valor 2 en la célula en la intersección de la fila 3 y la columna 2.
Código:
Range(Cells(1, 1), Cells(4, 1)).Value = 5
Resultado:
Declarar un objeto Range
Se puede declarar un objeto Range mediante el uso de las palabras clave Dim y Set.
Código:
Dim example As Range Set example = Range("A1:C4") example.Value = 8
Resultado:
Seleccionar
Un método importante del objeto Range es el método Select. El método Select simplemente selecciona un rango.
Código:
Dim example As Range Set example = Range("A1:C4") example.Select
Resultado:
Nota: para seleccionar las células en una hoja de cálculo diferente, tiene que activar primero esta hoja. Por ejemplo, las siguientes líneas de código seleccionar la celda B7 en la tercera hoja desde la izquierda.
Worksheets(3).Activate Worksheets(3).Range("B7").Select
Filas
La propiedad Filas 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: la frontera sólo para ilustración.
Columnas
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: la frontera sólo para ilustración.
Copiar / Pegar
La Copiar y pegar método se utilizan para copiar un rango y para 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 siguiente, que hace exactamente lo mismo.
Range("C3:C4").Value = Range("A1:A2").Value
Borrar
Para borrar el contenido de un rango de Excel, puede utilizar el método ClearContents.
Range("A1").ClearContents
o simplemente utilizar:
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 sólo el formato.
El conteo
Con la propiedad Count, se puede contar el número de celdas, filas y columnas de una gama.
Nota: la frontera sólo 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 forma similar, se puede contar el número de columnas de un rango.