Macro para cambiar formato en Excel

Una de las grandes posibilidades de VBA es que haga cosas para ti. Quizás estas cosas, al principio, pueden parecerte inútiles, pero una vez que te vayas familiarizando con el entorno de programación le resultaran de gran utilidad.

En este caso vamos a grabar una macro que ponga un montón de títulos en bonito y tardemos menos de cinco minutos en hacerlo.

Ejemplo para cambiar formato

En la imagen siguiente podemos ver el ejemplo. Queremos poner un sombreado, negrita, aumentar el tamaño de letra y poner una línea en los encabezados de la siguiente lista:

Main list grabar macro

Como se puede ver es la típica lista de excel, tenemos una cabecera en la columna B y el resto de los rangos tenemos información sobre cada elemento del grupo.

Para facilitar nuestra lectura de la lista queremos darle algo de formato que nos facilite leer la lista de manera más intuitiva.

Grabar una macro

1.Grabamos una macro que haga lo siguiente:

  • Seleccionar primera cabecera: rango B4:E4
  • Ponemos en negrita
  • Aumentamos letra hasta tamaño 14
  • Sombreamos en gris clarito
  • Ponemos línea de gris un poco más oscuro por debajo
  • Paramos la grabadora de macros.

Nos quedará más o menos de esta manera:

Format First Title grabar macro

He quitado las líneas de cuadrícula para que no ensucien la imagen y se vea de manera más sencilla. Os recomiendo que lo hagáis siempre.

Editar la macro que hemos grabado

2. Una vez grabada la macro vamos al editor de VBA. Yo siempre voy presionando Alt + F11 pero también puedes ir mediante:

Pestaña Desarrollador >> Grupo Código >> Visual Basic

Haciendo click en la carpeta de Modules y luego en Module 1 llegaremos al código que acabamos de grabar. Algo así como esto:

cambiar formato en excel con una macro

Casi nadie conoce todo el código para dar formato, así que no os preocupéis si os suena a chino, ahora iremos a centrarnos en lo importante.

Formatear los títulos

3. Lo que vamos a hacer para dar formato a nuestros títulos es:

  • Un bucle For-Next que recorra todas las filas de nuestra tabla.
  • Un Statment del tipo If para añadir una condición. En este caso la condición que vamos a utilizar es que las celdas de la columna B sean diferentes de nada (esto en programación es buscar las celdas no vacías).

Para realizar estas funciones el código que necesitáis es el siguiente:

Adding Code grabar macro

***Ojo, el bucle For-Next lo he hecho desde donde tengo el primer título (fila 4) hasta donde tengo el útlimo, fila 170

4. Borramos la primera línea, la que hace referencia a esto:

Range(“B4:E4”).Select

5. y añadimos el código que hemos grabado donde se indica.

Una vez hecho esto nuestro código está listo para ejecutarse desde VBA.

Si presionamos F5 ya tendremos nuestro código ejecutándose hasta que termine. Nos quedará algo similar a esto:

Beauty Titles grabar macro

En el siguiente link puedes encontrar el archivo con su correspondiente código: Archivo de cambio de títulos

(Visited 68.837 times, 1 visits today)
Categorías VBA

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información ACEPTAR

Aviso de cookies