Macros y scripts
Configurar Excel para usar macros
Para crear macros con el grabador de macros, puede usar los comandos de la pestaña Programador que, de forma predeterminada, no está visible en la cinta de opciones.
Mostrar la pestaña Programador
Haga clic en la pestaña Archivo y luego en Opciones.
Active la categoría Personalizar cinta de opciones y luego la casilla de verificación Programador de la lista Personalizar la cinta de opciones - Pestañas principales.
Haga clic en Aceptar.
También puede usar la opción Personalizar la cinta de opciones del menú contextual de la cinta (clic derecho).
Definir el nivel de seguridad de las macros
Para guardar las macros, se aconseja definir temporalmente el nivel de seguridad de manera que se activen todas las macros. Para ejecutar una macro, deberá llevar a cabo esa operación antes incluso de abrir el libro que contiene las macros que se van a ejecutar.
Active la pestaña Programador y haga clic en el botón Seguridad de macros del grupo Código.
En la categoría Configuración de macros, haga clic en la opción Habilitar todas las macros de VBA (no recomendado; se puede ejecutar un código potencialmente peligroso).
![images/36_001.png](https://www.eni-training.com/download/90c98b3f-5e18-49b2-bd05-2730da886f2d/images/36_001.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
Haga clic en Aceptar.
Cuando haya terminado de usar las macros, recomendamos encarecidamente que recupere la configuración que desactiva todas las macros, es decir...
Grabar una macro
Los comandos macro permiten automatizar una serie de comandos y funciones realizadas con frecuencia. Precisamente, una manera de automatizar esas tareas repetitivas es grabar una macro. Microsoft Excel usa para ello el lenguaje de programación Visual Basic para Aplicaciones (VBA).
Observe que Office no tiene disponible esta función si los ordenadores trabajan en el entorno Windows RT.
Empiece por especificar si desea grabar la macro con referencias relativas o no: active la pestaña Programador y haga clic en el botón Usar referencias relativas del grupo Código para activarlo.
Si el botón está activado, Excel graba los desplazamientos en una macro con respecto a la posición inicial: cuando la macro se ejecuta, actuará sobre las celdas en función de la celda activa en el momento de la ejecución; de lo contrario, trabajará con referencias absolutas: sea cual sea la posición inicial en el momento de ejecutar la macro, actuará sobre las celdas grabadas en la macro.
Active la pestaña Programador y
haga clic en el botón Grabar macro del
grupo Código o
haga clic en el botón , situado a la izquierda de la barra de estado.
Introduzca el nombre que desea atribuir a la macro en el cuadro Nombre de la macro.
No está permitido usar espacios y el primer carácter del nombre debe ser una letra. Los demás...
Ejecutar una macro
Si la macro se ha creado en un libro diferente al libro de macros personales, ábralo.
Active la pestaña Programador y haga clic en el botón Macros del grupo Código o pulse AltF8.
Indique dónde se encuentra la macro que desea ejecutar usando la lista Macros en.
Haga doble clic en la macro.
Asignar una macro a un objeto gráfico
Gracias a esta técnica es posible ejecutar la macro haciendo clic sobre un objeto gráfico.
Haga un clic derecho en el objeto gráfico al que desea asignar una macro existente y elija la opción Asignar macro.
En el cuadro de diálogo que aparece, seleccione la macro en el cuadro Nombre de la macro.
En este ejemplo, un clic en el objeto gráfico (impresora) permitirá abrir la macro llamada Impresión_TD.
Haga clic en Aceptar.
Para seleccionar el objeto gráfico sin activar la macro, mantenga pulsada la tecla Ctrl al tiempo que hace clic en el objeto correspondiente.
Modificar una macro
Active la pestaña Programador y haga clic en el botón Macros del grupo Código o pulse AltF8.
Abra, si es preciso, la lista Macros en para seleccionar el libro que contiene la macro que hay que modificar.
Seleccione la macro y haga clic en el botón Modificar.
Los códigos de instrucción de la macro aparecen en una ventana de Microsoft Visual Basic para Aplicaciones. El código de apertura de una macro es siempre Sub seguido del nombre de la macro, mientras que el código de cierre es End Sub.
![images/36_003.png](https://www.eni-training.com/download/90c98b3f-5e18-49b2-bd05-2730da886f2d/images/36_003.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
Aunque no conozca el lenguaje de programación Visual Basic, podrá efectuar algunas modificaciones simples dentro de la macro.
Para modificar referencias de celdas, proceda como es habitual: vaya al lugar deseado e introduzca las referencias, use las teclas Supr, Retroceso...
Para seleccionar instrucciones, use la técnica de hacer clic y arrastrar.
Para copiar o mover instrucciones, use los comandos Edición - Copiar o Edición - Cortar y Edición - Pegar.
Cuando haya terminado las modificaciones, cierre
la ventana Microsoft Visual Basic para Aplicaciones haciendo
clic en su botón de cierre ().
Eliminar una macro
Active la pestaña Programador y haga clic en el botón Macros del grupo Código o pulse AltF8.
Abra, si es preciso, la lista Macros en para seleccionar el libro que contiene la macro que desea eliminar.
Seleccione la macro y haga clic en el botón Eliminar.
Haga clic en el botón Sí para confirmar la eliminación de la macro.
Guardar un libro con macros
Si desea volver a usar más adelante las macros en el libro, deberá guardarlo en un formato especial que soporte las macros, con extensión .xlsm.
Active el libro.
Haga clic en la pestaña Archivo, luego en la opción Guardar como y en la opción Examinar del panel central.
En el cuadro de diálogo Guardar como que aparece, modifique la carpeta de almacenamiento y el nombre del archivo, si es preciso.
Abra la lista Tipo y haga clic en la opción Libro de Excel habilitado para macros (*.xlsm).
Haga clic en Guardar.
Habilitar las macros del libro activo
Al abrir un archivo que contiene macros (archivo de tipo .xlsm), aparece debajo de la barra de fórmulas un mensaje de Advertencia de seguridad si las macros no se han habilitado.
![images/Ex2013_C35_05.png](https://www.eni-training.com/download/90c98b3f-5e18-49b2-bd05-2730da886f2d/images/Ex2013_C35_05.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
En ese caso, para activar las macros, haga clic en el botón Habilitar contenido o active la pestaña Archivo y haga clic en la opción Información.
Haga clic en el botón Habilitar contenido de la Advertencia de seguridad y haga clic en la opción Habilitar todo el contenido para que esté siempre activo el contenido de este libro, o bien en la opción Opciones avanzadas para activar las macros únicamente para esta sesión (en ese caso, active a continuación la opción Habilitar contenido para esta sesión y confirme mediante Aceptar).
Automatizar acciones mediante scripts
![images/logoNovedad.png](https://www.eni-training.com/download/90c98b3f-5e18-49b2-bd05-2730da886f2d/images/logoNovedad.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
Crear un script
Los scripts de Excel permiten guardar acciones repetitivas que debe realizar con frecuencia para reproducirlas todas las veces que sea necesario. Para eso Microsoft Excel utiliza el lenguaje de programación TypeScript. Para usar esta función es necesario disponer de una conexión a Internet.
Active la pestaña Automatizar y
luego haga clic en el botón Nuevo script .
A la derecha aparece la pestaña Editor de código.
![images/36_004.png](https://www.eni-training.com/download/90c98b3f-5e18-49b2-bd05-2730da886f2d/images/36_004.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
Elegimos la opción Escribir un script y vemos la siguiente imagen:
![images/36_005.png](https://www.eni-training.com/download/90c98b3f-5e18-49b2-bd05-2730da886f2d/images/36_005.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
El script que aparece de manera predeterminada detecta la hoja y la celda activas en ese momento y cambia el color del relleno de la celda activa a amarillo.
Puede modificarlo para escribir su propio código correspondiente a las acciones que desea guardar.
En este ejemplo, el script permite colorear de naranja las celdas de la A3 a la A8.
![images/36_006.png](https://www.eni-training.com/download/90c98b3f-5e18-49b2-bd05-2730da886f2d/images/36_006.png?id=AAEAAAD%2f%2f%2f%2f%2fAQAAAAAAAAAMAgAAAE1FbmkuRWRpdGlvbnMuTWVkaWFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VuaS5FZGl0aW9ucy5NZWRpYXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAAwdGVzdCB2Ml84IC0gZmZhNjQzOWQtZDZjYi00NzYxLWJhYTMtZWZkZDNiZDcwMWM25rSq0F7p2IgL)
Haga clic en el botón Guardar script .
Para renombrar el script, haga clic en el botón Más opciones , luego en la opción Cambiar nombre y
escriba el nuevo nombre del script.
Ejecutar un script
Haga clic en la pestaña Automatizar.
Los scripts presentes de manera predeterminada y los creados con antelación se pueden ver en la Galería Scripts de Office.
Si es necesario, haga clic en el botón Office Scripts de la galería de scripts...