Autocompletar de VBA

¿Qué hace Autocompletar en Excel VBA?

Hemos visto el autocompletar en la hoja de trabajo donde las celdas se llenan automáticamente en función de los valores en las celdas anteriores arriba, podemos usar VBA para que Excel haga la tarea por nosotros, para hacer esto usamos el método Selection.Autofill y proporcionamos el destino, es decir, hasta qué celdas se deben completar los valores.

El mejor uso de la función de autocompletar VBA se produce cuando necesitamos completar la fórmula de la primera celda en la celda de la columna. Por lo general, aplicamos la fórmula en la primera celda o copiamos y pegamos en la última celda o simplemente autocompletamos haciendo doble clic en la pequeña tecla de flecha. Otro mejor ejemplo del uso de autocompletar en Excel es cuando necesitamos insertar números de serie. Por lo general, escribimos los primeros tres números y luego los arrastramos hacia abajo hasta la última celda requerida.

En VBA también podemos realizar la tarea del método AutoFill. En este artículo, le mostraremos cómo podemos usar el método de autocompletar y las formas de escribir el código. Ahora veremos cómo podemos usar esta herramienta en la codificación VBA.

¿Cómo utilizar Autocompletar en VBA?

Para usar el autocompletar en VBA, necesitamos comprender la sintaxis del método de autocompletar. A continuación se muestra la sintaxis del autocompletar.

  • Rango (“A1”): Cuáles son las celdas para identificar el patrón de la serie de relleno.
  • Destino: Hasta qué celda desea continuar el patrón de serie de relleno. Aquí debemos mencionar la gama completa de celdas.
  • Escriba como xlAutoFillType: Aquí podemos seleccionar el tipo de relleno de la serie. A continuación se muestra la lista de elementos de este parámetro: xlFillCopy, xlFillDays, xlFillDefault, xlFillFormats, xlFillMonths, xlFillSeries, xlFillValues, xlFillWeekdays, xlFillYears, xlFlashFill, xlGrowthLineTrend, xlFlashFill, xlGrowthLineTrend, xlFillFill

Ejemplos de Autocompletar en Excel VBA

Veamos algunos ejemplos simples a avanzados de AutoFill de VBA en Excel.

Ejemplo # 1 - xlFillDefault

Primero, ingrese 3 números de serie en las primeras tres celdas.

En el subprocedimiento de VBA, mencione el rango de VBA como Rango ("A1: A3")

Código:

Sub AutoFill_Example1 () Rango ("A1: A3"). End Sub

Ahora acceda al método Autocompletar.

Ingrese el destino como Rango ("A1: A10")

Código:

Rango ("A1: A3"). Destino de Autocompletar: = Rango ("A1: A10") 

Seleccione el Tipo como xlFillDefault .

Código:

Rango ("A1: A3"). Destino de Autocompletar: = Rango ("A1: A10"), Tipo: = xlFillDefault 

Ahora ejecute el código, obtendremos los números de serie del 1 al 10.

Como mencionamos la celda de destino final como A10, se ha detenido allí, podemos ingresar la celda de destino como la última celda del Excel.

Ejemplo # 2 - xlFillCopy

Para los mismos números, usaremos el tipo xlFillCopy.

Código:

 Sub Autocompletar_Ejemplo1 () Rango ("A1: A3"). Destino de Autocompletar: = Rango ("A1: A10"), Tipo: = xlFillCopy End Sub 

Tengo la copia de las tres primeras celdas de las celdas restantes.

Ejemplo # 3 - xlFillMonths

Para este ejemplo, ingresé los primeros tres meses en las primeras 3 celdas.

Cambie el tipo de autocompletar a xlFillMonths.

Código:

 Sub AutoFill_Example1 () Rango ("A1: A3"). Destino de Autocompletar: = Rango ("A1: A10"), Tipo: = xlFillMonths End Sub 

Esto llenará la serie de meses.

Ejemplo # 4 - xlFillFormats

Para este ejemplo, ingresé números y apliqué formato a esas celdas.

Ahora cambiaré el tipo a xlFillFormats.

Código:

 Sub AutoFill_Example1 () Rango ("A1: A3"). Destino de Autocompletar: = Rango ("A1: A10"), Tipo: = xlFillFormats End Sub 

Ejecute este código y vea qué sucede.

Ha llenado formatos de las primeras tres celdas a las siguientes tres celdas y nuevamente a las siguientes tres celdas y así sucesivamente.

Ejemplo # 5 - xlFlashFill

Para este ejemplo, ingresé algunos valores de la celda A1 a A10, como se muestra en la imagen de abajo.

De esta lista, quiero extraer la parte numérica. Para decirle a Excel sobre el patrón, en la primera celda ingresaré manualmente la parte numérica de la primera celda.

Ahora escribiré el código como de costumbre y cambiaré el tipo a xlFlashFill. Esta vez usaremos el rango de la columna B.

Código:

 Sub AutoFill_Example1 () Rango ("B1"). Destino de Autocompletar: = Rango ("B1: B10"), Tipo: = xlFlashFill End Sub 

Si ejecuto este código, obtendremos el resultado como el siguiente.

Esta es la descripción general del método AutoFill de VBA. Espero que lo hayas disfrutado.

Puede descargar esta plantilla de Excel de Autocompletar de VBA desde aquí - Plantilla de Excel de Autocompletar de VBA