Rango de VBA

Objeto de rango de Excel VBA

El rango es una propiedad en VBA que es similar a la propiedad de la hoja de trabajo, la propiedad de rango también tiene muchas aplicaciones y usos, cuando escribimos nuestro código y especificamos un rango de celda en particular o una celda en particular, se hace mediante el método de propiedad de rango, se usa para dar referencia a celdas, filas y columnas.

Como sabe, VBA se utiliza para registrar y ejecutar macros y automatizar las tareas de Excel y realizar tareas repetitivas de forma más rápida y precisa.

En el contexto de la hoja de cálculo de Excel, el objeto de rango de VBA denota celdas, ya sean únicas o múltiples. El objeto de rango puede incluir una sola celda, una fila o columna completa, o múltiples celdas distribuidas en filas y columnas.

Para que VBA ejecute las macros y realice las tareas, debe identificar las celdas en las que se deben realizar las tareas llamadas. Es aquí donde el concepto de Objetos de rango encuentra su utilidad.

¿Cómo utilizar el objeto Range?

Para hacer referencia a los objetos en VBA, utilizamos la técnica jerárquica. Hay 3 jerarquías:

  • Calificador de objeto: se refiere a la ubicación del objeto, como dónde está, es decir, el libro o la hoja de trabajo a la que se hace referencia.
  • Los otros 2 se utilizan para realizar la manipulación de valores de celda. Estos son propiedades y métodos.
  • Propiedad: Aquí se almacena la información sobre el objeto.
  • Método: Se refiere a la acción que realizará el objeto.

Por ejemplo, para Rango, el método será acciones como ordenar, formatear, seleccionar, borrar, etc.

Esta es la estructura que se sigue cada vez que se hace referencia a un objeto VBA. Estos 3 están separados por un punto (.)

Application.Workbooks.Worksheets.Range

sintaxis

Aplicación. Libros de trabajo ("Booknew.xlsm"). Hojas de trabajo ("Hoja3"). Rango ("B1")

Ejemplos

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

Ejemplo n. ° 1: referencia a una celda única

Supongamos que tenemos que seleccionar la celda "B2" en la "hoja1" en el libro de trabajo.

Siga los pasos siguientes:

  1. Abra el Excel. Abra uno con la extensión de Excel ".xlsm" que significa "Libro de trabajo habilitado para macros de Excel". El libro de trabajo de Excel de tipo ".xlsx" no le permitirá guardar las macros que estará escribiendo ahora.
  2. Ahora, una vez que haya abierto el libro de trabajo, debe ir al Editor de VBA. Puede usar el acceso directo, "ALT + F11" para abrir el editor, o usar el método siguiente como se muestra en la captura de pantalla:

Verá una pantalla similar a la siguiente:

Ahora, escriba el código como se muestra en la siguiente captura de pantalla.

Public Sub SingleCellRange ()

ThisWorkbook.Worksheets (“Sheet1”). Range (“B2”). Select

End Sub

Vea en la captura de pantalla de Excel a continuación que actualmente, la celda A2 está activada. Después de ejecutar el código, observe dónde está la celda activada.

Ejecute el código como se muestra en la siguiente captura de pantalla:

Consejo: también puede utilizar la tecla de método abreviado de Excel, es decir, F5 para ejecutar el código

Verá que la celda "B2" está seleccionada después de la ejecución del programa.

Lo que hace aquí es que le está dando instrucciones al programa para que vaya a una celda en particular en una hoja de trabajo en particular de un libro de trabajo en particular y realice la acción como se indica, que está aquí para seleccionar.

De manera similar, puede usar la sintaxis para seleccionar una amplia variedad de celdas y rangos, y también realizar diferentes tipos de acciones en ellas.

Ejemplo n. ° 2: selección de una fila completa

Por ejemplo, aquí para seleccionar la segunda fila. Ejecute el código que se proporciona a continuación para seleccionar una fila completa

Public Sub EntireRowRange ()

ThisWorkbook.Worksheets ("Sheet1"). Range ("2: 2"). Seleccione

End Sub

Aquí el rango ("2: 2") significa la segunda fila. Puede volver a su hoja de cálculo de Excel y ver los resultados como se muestra en la captura de pantalla a continuación.

Ejemplo n. ° 3: selección de una columna completa

Por ejemplo, aquí para seleccionar toda la columna C. Ejecute el código que se proporciona a continuación y vea los resultados.

Public Sub EntireRowRange ()

ThisWorkbook.Worksheets ("Sheet1"). Range ("2: 2"). Seleccione

End Sub

Después de ingresar el código dado anteriormente, verá que se ha seleccionado toda la columna en su hoja de trabajo de Excel. Consulte la captura de pantalla a continuación.

Aquí, rango ("C: C") significa la Columna C.

De manera similar, puede seleccionar celdas continuas o celdas no contiguas, una intersección de rangos de celdas, etc.

Simplemente realice los siguientes cambios en la parte de Rango que se muestra en el código.

Ejemplo n. ° 4: selección de celdas contiguas: rango ("B2: D6")

Ejemplo n. ° 5: selección de celdas no contiguas: rango ("B1: C5, G1: G3")

Ejemplo n. ° 6 - Selección de la intersección de rango: Rango (“B1: G5 G1: G3”)

[Note la ausencia de coma aquí]. Aquí verá que se seleccionan G1 a G3, que son las celdas comunes en el rango proporcionado.

Ahora, el siguiente ejemplo será seleccionar un grupo de celdas en la hoja de trabajo y fusionarlas en una sola celda.

Ejemplo n. ° 7: fusionar un rango de celdas

Suponga que desea fusionar las celdas "B1: C5" en una. Vea el código que se proporciona a continuación y sígalo.

Aquí, ".merge" es la acción que estamos realizando en el grupo de celdas dadas en un rango

Ejemplo n. ° 8 - Borrar el formato en el rango de celdas

Supongamos que las celdas “F2: H6” están resaltadas en amarillo y queremos borrar ese formato de Excel. En otro escenario, tal vez, desee eliminar todo el formato de la hoja de trabajo completa o de un grupo de celdas.

Vea las capturas de pantalla a continuación para seguir. Primero, le mostraré las celdas formateadas (F2: H6).

Ejecute los códigos que se muestran en la captura de pantalla a continuación para eliminar este formato en el rango de celdas seleccionado.

Sintaxis: ThisWorkbook.Worksheets ("Sheet1"). Range ("F2: H6"). ClearFormats

Public Sub ClearFormats ()

ThisWorkbook.Worksheets ("Sheet1"). Range ("F2: H6"). ClearFormats

End Sub

Puede consultar esta captura de pantalla que se muestra a continuación:

Del mismo modo, puede borrar el contenido de un rango de celdas mediante la acción ".ClearContents".

Hay muchas cosas que puede hacer. Pruébelos para aprender mejor.

Cosas para recordar

  • El objeto de rango denota una sola celda o varias celdas.
  • Para manipular los valores de las celdas, necesitamos usar las propiedades y métodos
  • Para hacer referencia a objetos en Excel, Range sigue el patrón de jerarquía de objetos utilizando el "." Notación.