Objeto de rango de Excel VBA

Un rango no es más que una celda o una serie de celdas. En VBA a menudo nos referimos al rango de palabras para seleccionar una celda particular o una serie de celdas. Mientras trabaja con Excel, todo se refiere a celdas y rangos, no es diferente en VBA también.

Para comprender el VBA, es muy importante comprender los conceptos básicos del rango en VBA. Usualmente hacemos muchas actividades con un rango de celdas, por ejemplo, copiamos, pegamos, editamos, borramos, etc.

De manera similar en VBA también, tenemos un conjunto específico de código que puede realizar la tarea por nosotros. En este artículo, analizaremos la propiedad de rango de VBA.

Sintaxis del objeto Range

La propiedad de rango incluye celdas como su parámetro.

¿Cómo utilizar Excel VBA Range Object?

Aprenderemos cómo usar un objeto de rango VBA con algunos ejemplos.

Puede descargar esta plantilla Excel de rango VBA aquí - Plantilla Excel de rango VBA

Mediante el uso del método Select - Ejemplo # 1

Por ejemplo, si desea seleccionar un rango de celdas de A1 a A10, qué hará, seleccionará con el mouse o utilizará una tecla de acceso directo para seleccionar. De manera similar en VBA también, necesitamos decirle al Excel qué hacer por escrito. Por ejemplo, si desea seleccionar las celdas de A1 a A13, el siguiente código hará el trabajo por nosotros.

Código:

 Sub Range_Example () Range ("A1: A13"). Seleccione End Sub 

Si ejecuta este código con la tecla F5 o manualmente, esto seleccionaría las celdas de A1 a A13 en la hoja activa.

Este código realizará la tarea en la hoja activa. He realizado esta tarea en la Hoja 1. Si voy a la Hoja 2 y ejecuto este código allí, también seleccionará las celdas de A1 a A13.

De esta manera, si no menciona el nombre de la hoja de trabajo, siempre seleccionará el rango proporcionado en la hoja activa, incluso si se abre un libro diferente.

Si desea seleccionar las celdas en la Hoja 1 solamente, entonces debe proporcionar esto en el código como se muestra a continuación.

Código:

 Sub Range_Example () Hojas de trabajo ("Hoja 1"). Active Range ("A1: A13"). Seleccione End Sub 

Primero, debe activar el nombre de la Hoja de trabajo llamado "Hoja 1" y luego debe realizar la tarea de seleccionar un rango de A1 a A13. Independientemente de la hoja que sea, activará la Hoja 1 y seleccionará el rango A1 a A13.

Seleccionando Rango - Ejemplo # 2

Puede proporcionar el rango en el primer argumento o también puede proporcionarlo como dos argumentos. Como he mostrado en el ejemplo anterior, también podemos seleccionar el rango de celdas de A1 a A13 utilizando el siguiente método.

Código:

 Sub Range_Example2 () Hojas de trabajo ("Hoja 1"). Active Range ("A1", "A13"). Seleccione End Sub 

Ejecute este código con la tecla F5 o manualmente para ver el resultado.

Esto también realizaría la misma tarea que la anterior. Del mismo modo, si está seleccionando el rango de diferentes libros, también debe especificar el nombre del libro.

Seleccionar Rango - Ejemplo # 3

Por ejemplo, si quiero seleccionar el rango de celdas de A1 a A13 en el libro de trabajo llamado "Ejemplo WB", primero necesito especificar el nombre del libro de trabajo usando la propiedad Workbooks y necesito mencionar el nombre completo del libro de trabajo con su extensión.

Después de seleccionar el Libro de trabajo, debemos seleccionar la hoja de trabajo usando la propiedad Hoja de trabajo.

Código:

 Sub Range_Example3 () Workbooks ("Example WB.xlsm"). Worksheets ("Sheet1"). Active Range ("A1", "A13"). Seleccione End Sub 

Selección de rango con propiedad final - Ejemplo # 4

Suponga que tiene datos como se muestra en la imagen a continuación.

Si desea seleccionar la última celda utilizada en la columna, ¿cómo seleccionar en Excel? Por lo general, primero selecciona la celda A1 y mantendrá presionada la tecla Ctrl y presiona la tecla de flecha hacia abajo y seleccionará la última celda utilizada.

De manera similar, en VBA se aplicará la misma lógica, pero aquí debe usar la propiedad END en lugar del botón Ctrl de Excel normal.

El siguiente código haría el trabajo por nosotros. Le llevará a la última celda de descomposición en la columna seleccionada.

Código:

 Sub Range_Example4 () Range ("A1"). End (xlDown). Seleccione End Sub 

Selección de rango con propiedad final - Ejemplo # 5

Del mismo modo, si desea seleccionar la última columna, debe usar el método xlRight en lugar del método xlDown .

Código:

 Sub Range_Example5 () Range ("A1"). End (xlToRight). Seleccione End Sub 

Selección de tabla completa con rango con propiedad final - Ejemplo # 6

Suponga que tiene datos como se muestra en la imagen a continuación.

Si desea seleccionar los datos, simplemente los seleccionará de A1: C6. Del mismo modo, en VBA podemos suministrar el código como Rango ("A1: C6"). Seleccione . Esto es simple, pero si sus datos siguen cambiando, ¿cómo seleccionará?

Al usar el siguiente código, podemos seleccionar todo el rango, incluso si el rango cambia en cualquier momento dado.

Código:

 Sub Range_Example6 () Range ("A1", Range ("A1"). End (xlToRight) .End (xlDown)). Seleccione End Sub 

Ejecute este código con la tecla F5 o manualmente para ver los resultados.

Ahora aumente los datos horizontal y verticalmente. He aumentado los datos que se destacan.

Ahora vuelva a ejecutar el código con la tecla F5 o manualmente y aún así, haría el trabajo por mí.

Insertar valores a celdas con propiedad de rango - Ejemplo # 7

Después de todo esto, debe estar pensando cómo insertamos valores en las celdas. Sí, podemos insertar valores en una celda. A continuación se muestra el código simple que puede insertar valores en las celdas.

Código:

 Sub Range_Insert_Values ​​() Range ("A1"). Value = 20 Range ("A2"). Value = 80 End Sub 

Ahora ejecute el código con la tecla F5 o manualmente, luego el código insertará el valor 20 en la celda A1 e insertará el valor 80 en la celda A2.

Celdas vs Rango

He mostrado dos métodos diferentes para referirme a la celda: uno usa la propiedad CELLS y otro usa la propiedad RANGE. A pesar de que ambos se parecen, existen diferencias.

  • Las celdas pueden seleccionar solo una celda a la vez, es decir, Celdas (1, 1). Seleccionar significa en la primera fila seleccionar la primera columna, es decir, la celda A1. Si desea seleccionar A1 y A2 juntos, la propiedad CELLS no puede realizar esta tarea.
  • El rango puede seleccionar muchas celdas a la vez, es decir, Rango ("A1: A5"). Seleccionar significa que esto seleccionará las celdas de A1 a A5.

Cosas para recordar

  • También podemos realizar todos los métodos relacionados con la propiedad RANGE en VBA.
  • La propiedad CELLS puede seleccionar solo una celda, pero la propiedad RANGE puede seleccionar muchas celdas a la vez.
  • Si desea insertar valores de texto en las celdas, debe encerrar el texto con comillas dobles.

Artículos recomendados

Esta ha sido una guía para el rango VBA. Aquí discutimos cómo usar el objeto Range junto con algunos ejemplos prácticos y una plantilla de Excel descargable. También puede consultar nuestros otros artículos sugeridos:

  1. ¿Cómo usar la función VBA en Excel?
  2. Guía de rango en Excel
  3. ¿Cómo utilizar la función VBAOKUP VBA?
  4. Guía de la función VBA TRIM

Categoría: