Lección 2: Crear y editar botones. Asignar macros a botones.

asignar-macros-botones

Escrito por Administrador

24 de septiembre de 2021

En esta segunda lección, vas a aprender a crear, editar y asignar macros a botones en Microsoft Excel®, para que simplemente al pulsarlos se realicen todas las operaciones programadas. Comenzamos!

Abrimos el libro de la lección anterior y pulsamos la combinación de teclas ALT+F11 para lanzar el editor de Microsoft Visual Basic. Otra manera de abrirlo sería pulsando el botón Visual Basic de la pestaña Programador.

A la izquierda de la imagen, verás el esquema del proyecto del libro actual.

En primer lugar aparecen los objetos, que no son más que las hojas de cálculo que forman nuestro libro.

A continuación, cuelgan los módulos. En nuestro caso un solo módulo, que guarda la macro que creamos en la lección anterior. Más adelante verás que dentro de cada módulo se pueden guardar varias macros, es decir, no tiene por qué existir una relación directa entre el número de módulos y el número de macros.

Vamos a crear un nuevo módulo seleccionando en el menú Insertar > Módulo. Verás que en el panel izquierdo aparece el segundo módulo. Escribimos la siguiente macro:

 

Macro 1. Borrar el contenido de celdas y asignarles números.

Sub Leccion2()

'Macro para borrar el contenido de las celdas y asignarle números

Range("A1:A8").ClearContents                 'Borra el contenido del rango seleccionado, desde A1 hasta A8

Cells(1,1).Value=1                                   'Asignamos el valor 1 a la celda(1,1) que es A1

Cells(2,1).Value=2                                   'Asignamos el valor 2 a la celda(2,1) que es A2

Cells(3,1).Value=3                                   'Asignamos el valor 3 a la celda(3,1) que es A3

Cells(4,1).Value=4                                   'Asignamos el valor 4 a la celda(4,1) que es A4

Cells(5,1).Value=5                                   'Asignamos el valor 5 a la celda(5,1) que es A5

Cells(6,1).Value=6                                   'Asignamos el valor 6 a la celda(6,1) que es A6

Cells(7,1).Value=7                                   'Asignamos el valor 7 a la celda(7,1) que es A7

Cells(8,1).Value=8                                   'Asignamos el valor 8 a la celda(8,1) que es A8

End Sub

Esta macro va a borrar el contenido de las celdas desde A1 hasta A8 y después les va a asignar valores desde el 1 hasta el 8.

La asignación de un valor a una celda la he realizado de manera distinta a la que veíamos en la macro de la lección anterior sobre cómo configurar Microsoft Excel para el uso de macros. Quédate con la que más te guste.

Guardamos y cerramos el editor VBA.

Nos vamos a la pestaña Programador y pulsamos sobre el botón Macros que veíamos en la lección anterior. Ya tenemos dos macros!

Vamos a crear ahora nuestro primer botón. Para ello cerramos la ventana y en la pestaña Programador pinchamos sobre Insertar > (Controles de formulario) Botón.

Dibuja un rectángulo en cualquier parte de la hoja y al soltar aparecerá el siguiente cuadro de diálogo:

Elige la macro que acabas de crear (Leccion2), pulsa Aceptar y ya tenemos creado el botón con la macro Leccion2 asignada.

Pinchamos sobre cualquier celda para salir del modo edición del botón y ejecutamos la macro. ¿Cómo? Pues pulsando el botón que acabamos de crear. Verás cómo automáticamente las celdas desde A1 hasta A8 toman los valores desde 1 hasta 8 tal y como habíamos programado. Así da gusto trabajar, y esto solo acaba de empezar!

Los botones de los controles de formulario son editables.

Para modificar el texto, pulsa el botón derecho del ratón cuando te encuentres sobre él y elige la opción Modificar texto. Escribe el texto “Numeros”.

Para asignar una macro distinta al botón, elige la opción Asignar macro pulsando sobre el botón derecho del ratón cuando te encuentres sobre él.

Para cambiar tipo de fuente, color, tamaño… pulsa sobre el botón derecho cuando te encuentres sobre él y elige la opción Formato de control.

Antes de terminar, vamos a crear un segundo botón para restaurar al estado anterior la tabla. Para esto, sólo tenemos que asociar este nuevo botón a la macro que creamos en la primera lecciónLeccion1”, siguiendo el mismo procedimiento que hemos visto anteriormente. Escribe en el texto del botón “Letras”.

El resultado será una tabla como la siguiente:

Si pulsamos el botón “Números” se ejecutará la macro “Leccion2” y en las 8 primeras filas aparecerán los números del 1 al 8. Si pulsamos el botón “Letras” se ejecutará la macro “Leccion1” y en las 8 primeras filas aparecerán las letras de la a hasta la h.

Con esto llegamos al final de la segunda lección. Espero que te haya gustado y que te plantees hacer el curso completo para ser capaz de programar por ti mismo sin limitaciones cualquier macro que se te pase por la cabeza. Nos vemos en el próximo capítulo.

Descarga el archivo del ejemplo

« L1. Configurar Excel para el uso de macros.

L3. Función ScreenUpdate en una macro. »

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Quizá te interese,

Contacto