Función de compensación de VBA de Excel

Como hay dos cosas en esta palabra, una es VBA y otra es OFFSET. En esto, explicaré cómo usar la función OFFSET usando VBA (Visual Basic para Aplicaciones).

VBA: es un lenguaje de programación para quienes trabajan en Excel y otros programas de Office, por lo que uno puede automatizar tareas en Excel escribiendo Macros.

OFFSET - Es una función de referencia en Excel. La función OFFSET devuelve una referencia a un rango que es un número específico de filas y columnas de otro rango o celda. Es una de las nociones más importantes en Excel.

Consideremos que tenemos un conjunto de datos que consta de columnas Nombre del cliente , Producto, ventas, Cantidad, Descuento.

Suponga que si tenemos que movernos hacia abajo desde una celda en particular al número particular de filas y elegir esa celda en ese punto del tiempo, la función OFFSET es muy útil. Por ejemplo, desde la celda B1 queremos mover 5 celdas hacia abajo y queremos seleccionar la celda, es decir, B6. Suponga que si desea moverse hacia abajo desde B1 celda 2 filas y va 2 columnas a la derecha y seleccione esa celda, es decir, la celda D2.

Para usar la función OFFSET en VBA, tenemos que usar el objeto RANGO VBA porque OFFSET hace referencia a celdas y desde ese objeto RANGE podemos usar la función OFFSET. En Excel, RANGE se refiere al rango de celdas.

Echemos un vistazo a cómo se utiliza OFFSET con RANGE.

Rango ("A1"). Desplazamiento (5) .seleccionar

¿Cómo usar la función OFFSET en Excel VBA?

A continuación se muestran los diferentes ejemplos para usar la función OFFSET en Excel usando el código VBA.

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

VBA OFFSET - Ejemplo # 1

Paso 1: selecciona la pestaña Desarrollador. Haga clic en Insertar y seleccione la primera opción de los controles ActiveX. Como puedes ver ese botón de comando.

Paso 2: arrastre la flecha en cualquier celda para crear un botón de comando .

Paso 3: Para ingresar a la función DESPLAZAMIENTO, haga clic derecho en el botón de comando y haga clic en Ver código.

Cuando hace clic en el código Ver, aparece la ventana de Microsoft VBA (Visual Basic para Aplicaciones). En esa ventana, podemos ver que alguna función está escrita.

Código:

 Private Sub CommandButton1_Click () End Sub 

Paso 4: Dentro de esta función, tenemos que escribir nuestro código de DESPLAZAMIENTO para seleccionar celdas. Como se mencionó anteriormente, tenemos que usar la función OFFSET con RANGE en VBA.

Código:

 Private Sub CommandButton1_Click () Range (End Sub 

Paso 5: en este código, tenemos que seleccionar la quinta celda de la columna Producto, es decir, B6 . La celda 1 en el rango es B1 porque tenemos que mover 5 celdas hacia abajo desde la celda B1 a B6, es decir, 5 celdas hacia abajo.

Código:

 Private Sub CommandButton1_Click () Range ("B1"). Offset (End Sub 

La función OFFSET tiene dos argumentos:

  1. RowOffset : cuántas filas queremos mover de la fila seleccionada. Tenemos que pasar el número como argumento.
  2. ColumnOffset : cuántas columnas queremos mover de la fila seleccionada.

Paso 6: Ahora quiero seleccionar la celda B6, es decir, tengo que mover 5 celdas hacia abajo. Entonces, tenemos que ingresar 5 como parámetro para el Desfase de fila.

Código:

 Private Sub CommandButton1_Click () Range ("B1"). Offset (5) End Sub 

Paso 7: Después de cerrar el corchete tenemos que poner un punto (.) Y escribir el método Select.

Código:

 Private Sub CommandButton1_Click () Range ("B1"). Offset (5). Seleccione End Sub 

Paso 8: para seleccionar la celda B6, haga clic en el botón de comando.

Como podemos ver, la celda B6 se selecciona después de hacer clic en el botón.

VBA OFFSET - Ejemplo # 2

En este ejemplo, veremos cómo usar el argumento Column OFFSET. Estaremos trabajando en los mismos datos. Todos los pasos anteriores serán los mismos, pero necesitamos hacer un cambio en el código.

Como quiero mover hacia abajo 5 celdas y tomar las 3 columnas correctas para llegar a la celda E6.

Código:

 Private Sub CommandButton1_Click () Range ("B1"). Offset (5, 3). Seleccione End Sub 

Para seleccionar la celda E6, haga clic en el botón de comando.

Como podemos ver, la celda E6 se selecciona después de hacer clic en el botón.

Cosas para recordar

  • Es una función de referencia en Excel. La función OFFSET devuelve una referencia a un rango que es un número específico de filas y columnas de otro rango o celda.
  • VBA OFFSET se usa con el objeto RANGE en VBA.

Artículos recomendados

Esta es una guía de VBA OFFSET. Aquí discutimos cómo usar la función OFFSET en Excel usando el código VBA junto con ejemplos prácticos y una plantilla de Excel descargable. También puede consultar los siguientes artículos para obtener más información:

  1. Uso de la función VBA UBound
  2. Tutoriales sobre la función OFFSET de Excel
  3. ¿Cómo crear un hipervínculo VBA?
  4. Formas de utilizar el controlador de relleno de Excel

Categoría: