Documente Academic
Documente Profesional
Documente Cultură
Índice
1. Qué es una macro de Excel
2. Así funcionan las macros en Excel
3. Las ventajas de utilizar macros con Excel
4. Crear macros en Excel: manual paso a paso
5. Cómo crear diagramas y cuadros de diálogo con macros de Excel
6. Importar o exportar macros de Excel
No es extraño, por esto, que la posibilidad de crear macros se cuente entre las
características cruciales del programa de cálculo. La herramienta integrada en Excel para
grabar macros utiliza el lenguaje de scripts Visual Basic for Applications (VBA), que
también se implementa en Word, PowerPoint, Access y Outlook. Gracias a este lenguaje
es posible crear macros en Excel capaces de ejecutar de forma automática comandos
rutinarios o incluso añadir nuevas funciones (algoritmos para el análisis de datos) a la hora
de cálculo.
Mediante las listas (objetos señalados con el sufijo plural -s) las macros también pueden
ejecutar acciones sobre un grupo de objetos. El objeto para listas “Worksheets” en una
macro tiene como resultado que las instrucciones se aplican a todas las hojas de trabajo.
Para ejecutar una macro se tienen estas tres opciones:
Reducen el tiempo de trabajo: como las macros se crean una sola vez y se
utilizan siempre que se necesite, ahorran un tiempo valioso que es posible dedicar
a otras tareas.
Para poder grabar macros hay que añadir la pestaña Developer (Programador)
a la cinta de opciones
Marca la casilla de Developer y confirma haciendo clic en OK. Ahora la pestaña ya se
encuentra en la cinta de opciones.
Sub Hello()
MsgBox ("Hello world!")
End Sub
Guardamos el código en formato .xslm (Macro-Enabled Excel Format), cerramos y
volvemos a la hoja de Excel. Aquí hacemos clic en Macros y seleccionamos la macro
llamada “Hello” de la lista. Para ejecutarla accionamos el botón Run (Ejecutar) y aparece
un pequeño cuadro de información con el texto que acabamos de definir:
La primera macro Hello con el mensaje “Hello world!” ha sido creada con éxito
Haciendo clic en OK se cierra la ventana y se finaliza la ejecución de la macro.
2. Abre las opciones y haz clic en Quick Access Toolbar (Lista de símbolos de acceso
rápido)
Una vez finalizado, la lista de símbolos, que incluye “Guardar”, “Deshacer” y “Rehacer”, se
ha completado con la macro “Hello”:
La siguiente línea contiene el método Select para seleccionar la “Sheet 1” (Hoja 1), paso
necesario durante la ejecución manual del cambio de nombre antes del cambio en sí. Sin
embargo, los scripts de Visual Basic no necesitan seleccionar objetos para poder editarlos,
por lo que esta línea de código también es prescindible. Así que, una vez finalizada su
edición, el código definitivo tendría este aspecto:
Sub RenameWorksheets ()
Sheets("Sheet1").Name = "New Name"
End Sub
Ahora, vuelve a Excel y, de nuevo, cambia el nombre de la hoja de trabajo por el de “Sheet
1” (u Hoja1) para poder ejecutar a modo de prueba la macro “RenameWorksheets” recién
creada. El nombre debería, así, cambiar automáticamente. Ten en cuenta que para
poder ejecutar otra vez la macro hay que ajustar la macro al nombre nuevo.
Con una macro también se puede crear un comando para cambiar el nombre
de una hoja automáticamente.
Una vez presentada la creación de macros en general, los siguientes ejemplos ilustran de
forma concreta la diversidad de usos posibles de las macros de Excel.
Creación de un diagrama en un área de celdas
Una función muy utilizada de las tablas de Excel es la visualización de los datos como
esquemas o gráficos, una tarea algo laboriosa para la cual las macros pueden servir de
gran ayuda. Para comenzar, crea una macro con el nombre “AssortedTasks“ y declara
la variable para tu objeto:
Sub AssortedTasks()
Dim mygraphic As ChartObject
Set mygraphic = ActiveSheet.ChartObjects.Add(100, 50, 200, 200)
With mygraphic
.Chart.SetSourceData Source := Selection
End With
End Sub
Si, a continuación, a modo de prueba, introduces los valores del 1 al 5 en las celdas A1-A5
y ejecutas la macro, Excel presenta los datos introducidos como un gráfico de barras por
defecto, al no haber proporcionado ninguna información al respecto, que se haría mediante
la variable ChartType.
Sub DialogBox()
ActiveSheet.Range("A1").Value =
End Sub
Con este código, la macro se encarga de que la información que ha introducido el usuario
en el cuadro de diálogo se guarde en la celda A1 de la hoja activa (Hoja 1).
Prompt: con ayuda del primer argumento se define el texto que aparece en la
ventana y que ha de servir de apoyo al usuario.
Title: con este argumento se determina la cabecera del cuadro de diálogo
Default: define un valor estándar
Este sería un código ejemplar de una macro completa para un cuadro de diálogo con caja
y texto:
Sub DialogBox()
Sheet1.Range("A1").Value = InputBox("Please, enter a value for the field
A1", "Title of the dialog box", "Value for the field A1")
End Sub
Si ejecutas la macro, aparece la ventana correspondiente:
Estas opciones para activar o desactivar macros se encuentran en el Trust Center (Centro
de seguridad). Para ello se abre la pestaña File, se selecciona Options, aquí Trust Center
y, finalmente, Trust Center Settings (Ajustes del Trust Center). Aquí se encuentra el punto
Macros Settings (Personalizar macros), que incluye las posibilidades de configuración
mencionadas arriba.