Macros en Excel 2007

Anuncio
Macros en Excel 2007
Compilado por :
Guillermo Cruz Aristizábal
Asesor Nacional en Gestión de Información
Proyecto OID0013
Convenio 114 MPS-OIM
Macros en Excel 2007
Índice
Crear una macro ........................................................................................................................... 1
Grabar una macro ..................................................................................................................................1
Crear una macro mediante Microsoft Visual Basic............................................................................. 2
Copiar parte de una macro para crear otra..........................................................................................3
Asignar una macro a un objeto, gráfico o control ..............................................................................3
Eliminar una macro................................................................................................................................4
Ejecutar una macro ....................................................................................................................... 5
Ejecutar una macro................................................................................................................................5
Ejecutar una macro presionando una combinación de teclas de método abreviado con CTRL ....6
Ejecutar una macro haciendo clic en un botón de la barra de herramientas de acceso rápido .....6
Ejecutar una macro haciendo clic en un área de un objeto gráfico ..................................................6
Ejecutar automáticamente una macro al abrir un libro.......................................................................7
Eliminar macros........................................................................................................................... 10
Mostrar la ficha Programador.......................................................................................................................... 10
Eliminar una sola macro .................................................................................................................................. 10
Eliminar proyectos macro................................................................................................................................ 10
Escribir o grabar una macro ........................................................................................................ 11
Mostrar la ficha Programador .............................................................................................................11
Utilizar la grabadora de macros..........................................................................................................11
Utilizar Visual Basic para Aplicaciones .............................................................................................12
Firmar digitalmente un proyecto de macro.................................................................................. 13
Obtener un certificado digital para firmar..........................................................................................13
Crear un certificado digital propio para firmar ..................................................................................13
Firmar digitalmente un proyecto de macro........................................................................................ 13
Modificar una macro.................................................................................................................... 15
Descripción general de la seguridad de macros ......................................................................... 16
Configuración de seguridad de macros y sus efectos .....................................................................16
Firmas digitales y cómo funcionan ....................................................................................................16
Habilitar o deshabilitar macros en documentos de Office........................................................... 18
¿Qué es una macro y cuáles son los riesgos de seguridad? ..........................................................18
¿Cómo puede protegerme el Centro de confianza de macros no seguras? ..................................18
¿Qué debo hacer cuando una advertencia de seguridad pregunte si deseo habilitar o
deshabilitar una macro?......................................................................................................................19
Cambiar la configuración de seguridad de las macros de todos los documentos en el Centro de
confianza ..................................................................................................................................... 21
Macros en Excel 2007
Crear una macro
Para automatizar tareas repetitivas, puede grabar rápidamente una macro (macro: acción o conjunto de
acciones utilizados para automatizar tareas. Las macros se graban en el lenguaje de programación de
Visual Basic para Aplicaciones.) en Microsoft Office Excel. También puede crear una macro utilizando el
Editor de Visual Basic (Editor de Visual Basic: entorno en el que puede escribir y modificar código y
procedimientos de Visual Basic para Aplicaciones. El Editor de Visual Basic contiene un conjunto
completo de herramientas de depuración para buscar sintaxis, tiempo de ejecución y problemas lógicos
en el código en uso.) en Microsoft Visual Basic para escribir sus propias secuencias de comandos de
macro o para copiar toda o parte de una macro en una nueva macro. Una vez creada una macro, puede
asignarla a un objeto (como un botón de barra de herramientas, un gráfico o un control) para que pueda
ejecutarla haciendo clic en ese objeto. Si ya no es necesario utilizar una macro, puede eliminarla.
Grabar una macro
Cuando grabe una macro, la grabadora de macros graba todos los pasos necesarios para completar las
acciones que desea grabar. En los pasos grabados no se incluye el desplazamiento por la cinta de
opciones.
1.
Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:

Haga clic en el Botón Microsoft Office
Opciones de Excel.

En la categoría Más frecuentes, bajo Opciones principales para trabajar con
Excel, active la casilla de verificación Mostrar ficha Programador en la cinta de
opciones y, a continuación, haga clic en Aceptar.
y, a continuación, haga clic en
2.
Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas
las macros, haga lo siguiente:

En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.

En Configuración de macros, haga clic en Habilitar todas las macros (no
recomendado; puede ejecutarse código posiblemente peligroso) y, a
continuación, haga clic en Aceptar.
NOTA Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que
vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de
trabajar con las macros.
3.
En la ficha Programador, en el grupo Código, haga clic en Grabar macro.
4.
En el cuadro Nombre de la macro, escriba un nombre para la macro.
NOTA El primer carácter del nombre de la macro debe ser una letra. Los caracteres siguientes
pueden ser letras, números o caracteres de subrayado. No se permiten espacios en un nombre de
macro; puede utilizarse un carácter de subrayado como separador de palabras. Si utiliza un nombre
de macro que también es una referencia de celda, puede aparecer un mensaje indicando que el
nombre de la macro no es válido.
5.
Para asignar una combinación de tecla de método abreviado (método abreviado: tecla o
combinación de teclas de función, como F5 o CTRL+A, que utiliza para ejecutar un comando. Una
tecla de acceso, por lo contrario es un combinación de teclas, como ALT+F, que mueve el enfoque
a un menú, comando o control.) con CTRL para ejecutar la macro, en el cuadro Tecla de método
abreviado, escriba cualquier letra en mayúsculas o minúsculas que desee utilizar.
NOTA La tecla de método abreviado suplantará a cualquier tecla de método abreviado
predeterminada equivalente en Excel mientras esté abierto el libro que contiene la macro. Para
obtener una lista de teclas de método abreviado que utilicen la tecla CTRL que ya están asignadas
en Excel, vea Teclas de función y de método abreviado de Excel.
6.
En la lista Guardar macro en, seleccione el libro en el que desea almacenar la macro.
-1–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
SUGERENCIA Si desea que la macro esté disponible siempre que utilice Excel, seleccione Libro de
macros personal. Cuando se selecciona Libro de macros personal, Excel crea un libro oculto de
macros personal (Personal.xlsb), si no existe todavía, y guarda la macro en este libro. En Microsoft
Windows XP, este libro se guarda en la carpeta C:\Documents and Settings\nombre de
usuario\Datos de programa\Microsoft\Excel\XLStart para que se pueda cargar automáticamente
cada vez que se inicia Excel. En Microsoft Windows Vista, este libro se guarda en la carpeta
C:\Usuarios\nombre de usuario\Datos de programa\Microsoft\Excel\XLStart. Si desea que se
ejecute automáticamente una macro del libro de macros personal en otro libro, también debe
guardar ese libro en la carpeta XLStart, de forma que ambos libros se abran cuando se inicie Excel.
7.
Para incluir una descripción de la macro, escriba el texto que desee en el cuadro
Descripción.
8.
Haga clic en Aceptar para iniciar la grabación.
9.
Realice las acciones que desee grabar.
10.
En la ficha Programador, en el grupo Código, haga clic en Detener grabación
SUGERENCIA
También puede hacer clic en Detener grabación
.
en el lado izquierdo de la barra
de estado.
Crear una macro mediante Microsoft Visual Basic
1.
Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:

Haga clic en el Botón Microsoft Office
Opciones de Excel.

En la categoría Más frecuentes, bajo Opciones principales para trabajar con
Excel, active la casilla de verificación Mostrar ficha Programador en la cinta de
opciones y, a continuación, haga clic en Aceptar.
y, a continuación, haga clic en
2.
Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas
las macros, haga lo siguiente:

En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.

En Configuración de macros, haga clic en Habilitar todas las macros (no
recomendado; puede ejecutarse código posiblemente peligroso) y, a
continuación, haga clic en Aceptar.
NOTA Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que
vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de
trabajar con las macros.
3.
En la ficha Programador, en el grupo Código, haga clic en Visual Basic.
4.
Si es necesario, en el menú Insertar, haga clic en Módulo.
NOTA
Se crean módulos automáticamente para todas las hojas del libro.
5.
En la ventana de código del módulo, escriba o copie el código de macro que desea utilizar.
6.
Para ejecutar la macro desde la ventana del módulo, presione F5.
7.
En el menú Archivo, haga clic en Cerrar y volver a Microsoft Excel cuando termine de
escribir la macro.
-2–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Copiar parte de una macro para crear otra
1.
Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:

Haga clic en el Botón Microsoft Office
Opciones de Excel.

En la categoría Más frecuentes, bajo Opciones principales para trabajar con
Excel, active la casilla de verificación Mostrar ficha Programador en la cinta de
opciones y, a continuación, haga clic en Aceptar.
y, a continuación, haga clic en
2.
Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas
las macros, haga lo siguiente:

En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.

En Configuración de macros, haga clic en Habilitar todas las macros (no
recomendado; puede ejecutarse código posiblemente peligroso) y, a
continuación, haga clic en Aceptar.
NOTA Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que
vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de
trabajar con las macros.
3.
Abra el libro que contiene la macro que desee copiar.
4.
En la ficha Programador, en el grupo Código, haga clic en Macros.
5.
En el cuadro Nombre de la macro, haga clic en el nombre de la macro que desee copiar.
6.
Haga clic en Modificar.
7.
En la ventana de código del Editor de Visual Basic, seleccione las líneas de la macro que
desee copiar.
SUGERENCIA
Para copiar toda la macro, asegúrese de incluir las líneas Sub y End Sub en la
selección.
8.
En el menú Edición, elija Copiar.
SUGERENCIA También puede hacer clic con el botón secundario del mouse (ratón) y después hacer
clic en Copiar en el menú contextual, o bien, puede presionar CTRL+C.
9.
En el cuadro Procedimiento de la ventana de código, haga clic en el módulo en el que desea
colocar el código.
10.
En el menú Edición, elija Pegar.
SUGERENCIA También puede hacer clic con el botón secundario del mouse y después hacer clic en
Pegar en el menú contextual, o bien, puede presionar CTRL+V.
SUGERENCIA El archivo de libro de macros personal (Personal.xlsb) no se puede modificar porque es un
libro oculto que siempre está abierto. Primero debe mostrarlo utilizando el comando Mostrar. También
puede abrirlo en el Editor de Visual Basic presionando ALT+F11.
Asignar una macro a un objeto, gráfico o control
1.
En una hoja de cálculo, haga clic con el botón secundario del mouse en el objeto, gráfico o
control al que desea asignar una macro existente y, a continuación, haga clic en Asignar macro en
el menú contextual.
2.
En el cuadro Nombre de la macro, haga clic en la macro que desea asignar.
-3–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Eliminar una macro
1.
Abra el libro que contiene la macro que desee eliminar.
2.
En la ficha Programador, en el grupo Código, haga clic en Macros.
Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:

Haga clic en el Botón Microsoft Office
Opciones de Excel.

En la categoría Más frecuentes, bajo Opciones principales para trabajar con
Excel, active la casilla de verificación Mostrar ficha Programador en la cinta de
opciones y, a continuación, haga clic en Aceptar.
y, a continuación, haga clic en
3.
En la lista Macros en, seleccione Este libro.
4.
En el cuadro Nombre de la macro, haga clic en el nombre de la macro que desee eliminar.
5.
Haga clic en Eliminar.
-4–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Ejecutar una macro
Existen varias maneras de ejecutar una macro (macro: acción o conjunto de acciones utilizados para
automatizar tareas. Las macros se graban en el lenguaje de programación de Visual Basic para
Aplicaciones.). Siempre puede ejecutar una macro utilizando el comando de menú. Dependiendo de cómo
esté asignada la ejecución a la macro, puede que también pueda ejecutarla presionando una combinación
de teclas de método abreviado (método abreviado: tecla o combinación de teclas de función, como F5 o
CTRL+A, que utiliza para ejecutar un comando. Una tecla de acceso, por lo contrario es un combinación
de teclas, como ALT+F, que mueve el enfoque a un menú, comando o control.) con CTRL o haciendo clic
en un botón de barra de herramientas o en un área de un objeto, un gráfico o un control. Asimismo, puede
ejecutar una macro automáticamente cuando se abre el libro.
NOTA Cuando el nivel de seguridad de macros de Microsoft Office Excel está establecido en
Deshabilitar todas las macros sin notificación, Excel sólo ejecutará las macros firmadas digitalmente o
almacenadas en una ubicación de confianza, como por ejemplo la carpeta de inicio de Excel. Si la macro
que desea ejecutar no está firmada digitalmente o no está almacenada en una ubicación de confianza,
puede cambiar temporalmente el nivel de seguridad para que se habiliten todas las macros.
Ejecutar una macro
1.
Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:

Haga clic en el Botón Microsoft Office
Opciones de Excel.

En la categoría Más frecuentes, bajo Opciones principales para trabajar con
Excel, active la casilla de verificación Mostrar ficha Programador en la cinta de
opciones y, a continuación, haga clic en Aceptar.
y, a continuación, haga clic en
2.
Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas
las macros, haga lo siguiente:

En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.

En la categoría Configuración de macros, bajo Configuración de macros, haga
clic en Habilitar todas las macros (no recomendado; puede ejecutarse código
posiblemente peligroso) y, a continuación, haga clic en Aceptar.
NOTA Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que
vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de
trabajar con las macros.
3.
Abra el libro que contiene la macro.
4.
En la ficha Programador, en el grupo Código, haga clic en Macros.
5.
En el cuadro Nombre de la macro, haga clic en la macro que desea ejecutar.
6.
Siga uno de los procedimientos siguientes:

Para ejecutar una macro en un libro de Excel, haga clic en Ejecutar.
SUGERENCIA También puede presionar CTRL+F8 para ejecutar la macro. Puede
interrumpir la ejecución de la macro presionando ESC.

Para ejecutar una macro desde un módulo de Microsoft Visual Basic, haga clic en
Edición y, a continuación, en el menú Ejecutar, haga clic en Ejecutar
Sub/UserForm
o presione F5.
SUGERENCIA Puede ejecutar otra macro mientras trabaja en el Editor de Visual Basic. En la ficha
Programador, en el grupo Código, haga clic en Macros. En el cuadro Nombre de la macro, haga
clic en la macro que desea ejecutar y, a continuación, en Ejecutar.
-5–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Ejecutar una macro presionando una combinación de
teclas de método abreviado con CTRL
1.
En la ficha Programador, en el grupo Código, haga clic en Macros.
2.
En el cuadro Nombre de la macro, haga clic en la macro a la que desea asignar una
combinación de teclas con CTRL.
3.
Haga clic en Opciones.
4.
En el cuadro Tecla de método abreviado, escriba cualquier letra minúscula o mayúscula que
desee utilizar.
NOTA La tecla de método abreviado suplantará a cualquier tecla de método abreviado
predeterminada equivalente en Excel mientras esté abierto el libro que contiene la macro. Para
obtener una lista de teclas de método abreviado que utilicen la tecla CTRL que ya están asignadas
en Excel, vea Teclas de función y de método abreviado de Excel.
5.
Para incluir una descripción de la macro, escriba el texto que desee en el cuadro
Descripción.
6.
Haga clic en Aceptar y, a continuación, en Cancelar.
Ejecutar una macro haciendo clic en un botón de la
barra de herramientas de acceso rápido
1.
Haga clic en el Botón Microsoft Office
Excel.
y, a continuación, haga clic en Opciones de
2.
Haga clic en Personalizar y, a continuación, en la lista Comandos disponibles en,
seleccione Comandos más utilizados.
3.
En el cuadro de lista, haga clic en Ver macros y, a continuación, en Agregar.
4.
Haga clic en Aceptar.
SUGERENCIA
5.
El botón Ver macros se agregará a la barra de herramientas de acceso rápido.
En la barra de herramientas de acceso rápido, haga clic en el botón Ver macros.
6.
En el cuadro Nombre de la macro, haga clic en la macro que desea ejecutar y, a
continuación, en Ejecutar.
Ejecutar una macro haciendo clic en un área de un
objeto gráfico
1.
En la hoja de cálculo, seleccione un objeto gráfico existente, como una imagen, una imagen
prediseñada, una forma o un gráfico SmartArt.
2.
Para crear una zona activa en el objeto existente, en la ficha Insertar, en el grupo
Ilustraciones, haga clic en Formas, seleccione la forma que desea utilizar y, a continuación, dibuje
dicha forma en el objeto existente.
-6–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
3.
Haga clic con el botón secundario del mouse (ratón) en la zona activa que ha creado y, a
continuación, elija Asignar Macro en el menú contextual (menú contextual: menú que muestra una
lista de comandos relacionados con un elemento determinado. Para mostrar un menú contextual,
haga clic con el botón secundario del mouse (ratón) en el elemento, o presione MAYÚS+F10.).
4.
Siga uno de los procedimientos siguientes:

Para asignar una macro al botón u objeto gráfico, haga doble clic en la macro o
escriba el nombre de la misma en el cuadro Nombre de la macro.

Para grabar una nueva macro y asignarla al objeto gráfico seleccionado, haga clic
en Grabar. Cuando termine de grabar la macro, haga clic en Detener grabación
en la ficha Programador en el grupo Código.
SUGERENCIA También puede hacer clic en Detener grabación
de la barra de estado.

Para modificar una macro existente, haga clic en el nombre de la macro, en el
cuadro Nombre de la macro y, a continuación, haga clic en Modificar.
5.
Haga clic en Aceptar.
6.
En la hoja de cálculo, seleccione la zona activa.
SUGERENCIA
7.
en el lado izquierdo
Se mostrarán las Herramientas de dibujo con la ficha Formato.
En la ficha Formato, en el grupo Estilo de forma, haga lo siguiente:

Haga clic en la flecha situada junto a Relleno de forma y, a continuación, haga clic
en Sin relleno.

Haga clic en la flecha situada junto a Contorno de forma y, a continuación, haga
clic en Sin contorno.
Ejecutar automáticamente una macro al abrir un libro
Si graba una macro y la guarda usando el nombre "Auto_Abrir", la macro se ejecutará cada vez que se
abra el libro que contiene la macro. Otra forma de ejecutar automáticamente una macro al abrir un libro es
escribir un procedimiento de Visual Basic para Aplicaciones (VBA) en el evento Open del libro utilizando
el Editor de Visual Basic (Editor de Visual Basic: entorno en el que puede escribir y modificar código y
procedimientos de Visual Basic para Aplicaciones. El Editor de Visual Basic contiene un conjunto
completo de herramientas de depuración para buscar sintaxis, tiempo de ejecución y problemas lógicos
en el código en uso.). El evento Open es un evento de libro integrado que ejecuta su código de macro
cada vez que se abre el libro.
Crear una macro Auto_abrir
1.
Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:

Haga clic en el Botón Microsoft Office
Opciones de Excel.

En la categoría Más frecuentes, bajo Trabajar con Excel y con otras
aplicaciones de Office, active la casilla de verificación Herramientas para el
programador y haga clic en Aceptar.
-7–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
y, a continuación, haga clic en
Macros en Excel 2007
2.
Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas
las macros, haga lo siguiente:

En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.

En la categoría Configuración de macros, bajo Configuración de macros, haga
clic en Habilitar todas las macros (no recomendado; puede ejecutarse código
posiblemente peligroso) y, a continuación, haga clic en Aceptar.
NOTA Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que
vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de
trabajar con las macros.
3.
Si desea guardar la macro con un libro determinado, abra primero ese libro.
4.
En la ficha Programador, en el grupo Código, haga clic en Grabar macro.
5.
En el cuadro Nombre de la macro, escriba Auto_abrir.
6.
En la lista Guardar macro en, seleccione el libro en el que desea almacenar la macro.
SUGERENCIA Si desea que la macro esté disponible siempre que utilice Excel, seleccione Libro de
macros personal. Cuando se elige Libro de macros personal, Excel crea un libro oculto de
macros personal (Personal.xlsb), si no existe todavía, y guarda la macro en este libro. En Microsoft
Windows XP, este libro se guarda en la carpeta C:\Documents and Settings\nombre de
usuario\Datos de programa\Microsoft\Excel\XLStart para que se pueda cargar automáticamente
cada vez que se inicia Excel. En Microsoft Windows Vista, este libro se guarda en la carpeta
C:\Usuarios\nombre de usuario\Datos de programa\Microsoft\Excel\XLStart. Si desea que se
ejecute automáticamente una macro del libro de macros personal en otro libro, también debe
guardar ese libro en la carpeta XLStart, de forma que ambos libros se abran cuando se inicie Excel.
7.
Haga clic en Aceptar y realice las acciones que desea grabar.
8.
En la ficha Programador, en el grupo Código, haga clic en Detener grabación
SUGERENCIA
También puede hacer clic en Detener grabación
.
en el lado izquierdo de la barra
de estado.
NOTAS

Si en el paso 6 eligió guardar la macro en Este libro o en Libro nuevo, guarde o
mueva el libro a una de las carpetas XLStart.

La grabación de una macro Auto_abrir tiene las limitaciones siguientes:
o
Muchas de las acciones que quizás desee realizar no se pueden grabar.
o
Si el libro en el que guarde la macro Auto_abrir ya contiene un
procedimiento de VBA en su evento Open, el procedimiento de VBA del
evento Open reemplazará todas las acciones contenidas en la macro
Auto_abrir.
o
Las macros Auto_abrir se omiten cuando se abren libros mediante
programación utilizando el método Open.
o
Una macro Auto_abrir se ejecuta antes de que se abra cualquier otro
libro. Por lo tanto, si graba acciones que desea que realice Excel en el
libro predeterminado Libro1 o en un libro cargado desde la carpeta
XLStart, la macro Auto_abrir producirá un error cuando reinicie Excel
porque la macro se ejecuta antes de abrir los libros de inicio y el
predeterminado.
Si encuentra estas limitaciones, en vez de grabar una macro Auto_abrir, debe crear un
procedimiento de VBA para el evento Open como se describe en la sección siguiente de este
artículo.
-8–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Crear un procedimiento de VBA para el evento Open de un libro
El ejemplo siguiente utiliza el evento Open para ejecutar una macro al abrir el libro.
1.
Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:

Haga clic en el Botón Microsoft Office
Opciones de Excel.

En la categoría Más frecuentes, bajo Trabajar con Excel y con otras
aplicaciones de Office, active la casilla de verificación Herramientas para el
programador y haga clic en Aceptar.
y, a continuación, haga clic en
2.
Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas
las macros, haga lo siguiente:

En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.

En la categoría Configuración de macros, bajo Configuración de macros, haga
clic en Habilitar todas las macros (no recomendado; puede ejecutarse código
posiblemente peligroso) y, a continuación, haga clic en Aceptar.
NOTA Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que
vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de
trabajar con las macros.
3.
Guarde y cierre todos los libros abiertos.
4.
Abra el libro al que desea agregar la macro o cree un nuevo libro.
5.
En la ficha Programador, en el grupo Código, haga clic en Visual Basic.
6.
En la ventana Explorador de proyectos, haga clic con el botón secundario del mouse en el
objeto ThisWorkbook y, a continuación, haga clic en Ver código en el menú contextual.
SUGERENCIA Si la ventana Explorador de proyectos no está visible, en el menú Ver, haga clic en
Explorador del proyecto.
7.
En la lista Objeto situada encima de la ventana Código, seleccione Libro.
De esta manera se crea un procedimiento vacío para el evento Open, como el siguiente:
Private Sub Private Sub Workbook_Open()
End Sub
8.
Agregue al procedimiento las líneas de código siguientes:
Private Sub Private Sub Workbook_Open()
MsgBox Date
Worksheets("Hoja1").Range("A1").Value = Date
End Sub
9.
Cambie a Excel y guarde el libro como libro habilitado para macros (.xlsm).
10. Cierre y vuelva a abrir el libro. Al abrir de nuevo el libro, Excel ejecuta el procedimiento Private
Sub Workbook_Open, que muestra la fecha actual en un cuadro de mensaje.
11.
Haga clic en Aceptar en el cuadro de mensaje.
12. Observe que la celda A1 de la Hoja1 también contiene la fecha, como resultado de ejecutar el
procedimiento Private Sub Workbook_Open.
-9–
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Eliminar macros
Una macro consiste en una serie de comandos e instrucciones de Microsoft Office Word que se agrupan
en un solo comando de forma que la tarea pueda realizarse automáticamente.
Para trabajar con macros en Microsoft Office Word 2007 es necesario mostrar la ficha Programador.
Mostrar la ficha Programador
1.
Haga clic en el botón de Microsoft Office
Word.
2.
y, a continuación, haga clic en Opciones de
Haga clic en Más frecuentes.
3.
En Opciones principales para trabajar con Word, active la casilla de verificación Mostrar
ficha Programador en la cinta de opciones.
Eliminar una sola macro
1.
En la ficha Programador, en el grupo Código, haga clic en Macros.
2.
En la lista Nombre de la macro, seleccione el nombre de la macro que desea eliminar.
Si no aparece en la lista, seleccione otro documento o plantilla (plantilla: archivo o archivos que
contienen la estructura y las herramientas para dar forma a elementos como el estilo o el diseño de
página de los archivos finalizados. Por ejemplo, las plantillas de Word pueden dar forma a un
documento sencillo, y las plantillas de FrontPage pueden dar forma a un sitio Web completo.) en la
lista Macros en.
3.
Haga clic en Eliminar.
Eliminar proyectos macro
Un proyecto de macro es un conjunto de componentes que incluye macros, formularios, código y módulos
de clases.
1.
En la ficha Programador, en el grupo Código, haga clic en Macros.
2.
Haga clic en Organizador.
3.
En la ficha Elementos del proyecto macro, haga clic en el proyecto macro que desee
eliminar de cualquier lista y, a continuación, haga clic en Eliminar.
Word mostrará en la lista de la izquierda los proyectos macro utilizados en el documento
activo (documento activo: documento en el que se está trabajando. En la vista Esquema, Microsoft
Word muestra un símbolo a la izquierda de este tipo de texto. Todo el texto que se escriba o los
gráficos que se inserten en Microsoft Word aparecerán en el documento activo. La barra de título
del documento activo se muestra resaltada.) y, en la lista de la derecha, los proyectos macro de la
plantilla Normal del documento (plantilla Normal: plantilla global que puede utilizar para cualquier
tipo de documento. Puede modificar esta plantilla para cambiar el formato o el contenido
predeterminado del documento.).
- 10 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Escribir o grabar una macro
En Microsoft Office Word 2007 se pueden automatizar las tareas realizadas con más frecuencia creando
macros. Una macro consiste en una serie de comandos e instrucciones que se agrupan en un solo
comando de manera que la tarea pueda realizarse automáticamente.
Con frecuencia, las macros se utilizan para lo siguiente:

Acelerar las tareas rutinarias de modificaciones y formatos.

Combinar varios comandos; por ejemplo, para insertar una tabla con un tamaño y
bordes específicos, y con un número determinado de filas y columnas.

Hacer que una opción de un cuadro de diálogo sea más accesible.

Automatizar series de tareas complejas.
Para crear macros puede utilizar la grabadora de macros para grabar una secuencia de acciones, o bien,
puede crear macros desde el principio escribiendo código de Visual Basic para Aplicaciones (Visual Basic
para Aplicaciones (VBA): versión del lenguaje de macros de Microsoft Visual Basic que se utiliza para
programar aplicaciones basadas en Microsoft Windows y que se incluye en varios programas de
Microsoft.) en el Editor de Visual Basic (Editor de Visual Basic: entorno en el que puede escribir y
modificar código y procedimientos de Visual Basic para Aplicaciones. El Editor de Visual Basic contiene
un conjunto completo de herramientas de depuración para buscar sintaxis, tiempo de ejecución y
problemas lógicos en el código en uso.).
NOTA
Para trabajar con macros en Office Word 2007 es necesario mostrar la ficha Programador.
Mostrar la ficha Programador
1.
Haga clic en el botón de Microsoft Office
Word.
2.
y, a continuación, haga clic en Opciones de
Haga clic en Más frecuentes.
3.
Bajo Opciones principales para trabajar con Word, active la casilla de verificación Mostrar
ficha Programador en la cinta de opciones.
Utilizar la grabadora de macros
1.
En la ficha Programador, en el grupo Código, haga clic en Grabar macro.
2.
En el cuadro Nombre de macro, escriba el nombre correspondiente.
NOTA Si asigna a una nueva macro el mismo nombre que el de una macro integrada existente en
Office Word 2007, las acciones de la primera reemplazarán a las de la macro integrada. Para ver
una lista de las macros integradas, en la ficha Programador, dentro del grupo Código, haga clic en
Macros. En la lista Macros en, haga clic en Comandos de Word.
3.
En el cuadro Guardar macro en, haga clic en la plantilla (plantilla: archivo o archivos que
contienen la estructura y las herramientas para dar forma a elementos como el estilo o el diseño de
página de los archivos finalizados. Por ejemplo, las plantillas de Word pueden dar forma a un
documento sencillo, y las plantillas de FrontPage pueden dar forma a un sitio Web completo.) o en
el documento en que desea guardar la macro.
4.
En el cuadro Descripción, escriba un texto descriptivo de la macro.
5.
Siga uno de estos procedimientos:

Para empezar a grabar la macro sin asignarla a un botón de la Barra de
herramientas de acceso rápido o a una tecla de método abreviado, haga clic en
Aceptar.

Para asignar la macro a la Barra de herramientas de acceso rápido, siga estos
pasos:

Haga clic en Botón.

Bajo Personalizar barra de herramientas de acceso rápido, seleccione el
documento (o todos los documentos) para el que desea agregar la macro a la
Barra de herramientas de acceso rápido.
- 11 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007

6.

En el cuadro de diálogo Comandos disponibles en, haga clic en la macro
que vaya a grabar y, a continuación, haga clic en Agregar.

Haga clic en Aceptar para comenzar a grabar la macro.
Para asignar la macro a un método abreviado de teclado, siga este procedimiento:
1.
Haga clic en Teclado.
2.
En el cuadro Comandos, haga clic en la macro que va a grabar.
3.
En el cuadro Nueva tecla de método abreviado, escriba la secuencia
de teclas que desea utilizar y haga clic en Asignar.
4.
Haga clic en Cerrar para empezar a grabar la macro.
Realice las acciones que desee incluir en la macro.
NOTA Cuando grabe una macro, utilice el mouse (ratón) para hacer clic en comandos y opciones,
pero no para seleccionar texto. Si desea seleccionar texto, hágalo usando el teclado. Para obtener
información sobre cómo seleccionar texto utilizando el teclado, vea el tema Seleccionar texto.
7.
Para dejar de grabar las acciones, haga clic en Detener grabación en el grupo Código.
Utilizar Visual Basic para Aplicaciones
1.
En la ficha Programador, en el grupo Código, haga clic en Macros.
2.
En el cuadro Nombre de macro, escriba el nombre correspondiente.
NOTA Si asigna a una nueva macro el mismo nombre que el de una macro integrada existente en
Office Word 2007, las acciones de la primera reemplazarán a las de la macro integrada. Para ver
una lista de las macros integradas, haga clic en Comandos de Word en la lista Macros en.
3.
En la lista Macros en, haga clic en la plantilla (plantilla: archivo o archivos que contienen la
estructura y las herramientas para dar forma a elementos como el estilo o el diseño de página de
los archivos finalizados. Por ejemplo, las plantillas de Word pueden dar forma a un documento
sencillo, y las plantillas de FrontPage pueden dar forma a un sitio Web completo.) o el documento
donde desee guardar la macro.
4.
Haga clic en Crear para abrir el Editor de Visual Basic.
- 12 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Firmar digitalmente un proyecto de macro
En este artículo, se explica cómo se puede firmar digitalmente (firma digital: sello electrónico seguro con
cifrado que certifica la autenticidad de una macro o documento. Esta firma confirma que la macro o
documento emitido por el equipo o la persona que lo firma no ha sido alterado.) un archivo o un proyecto
de macro (proyecto de macro: colección de componentes, incluidos formularios, código y módulos de
clase, que constituyen una macro. Los proyectos de macro creados en Microsoft Visual Basic para
aplicaciones se pueden incluir en los complementos y en la mayoría de los programas de Microsoft
Office.) mediante un certificado (certificado: medio digital de confirmar la identidad y la autenticidad. Los
certificados son emitidos por entidades emisoras de certificados y, al igual que ocurre con los permisos de
conducción, pueden caducar o ser revocados.). Si aún no tiene ningún certificado digital, debe obtener
uno. Para probar los proyectos de macro en su propio equipo, puede crear su propio certificado de firma
con la herramienta Selfcert.exe.
Obtener un certificado digital para firmar
Puede obtener un certificado digital de una entidad emisora de certificados (entidad emisora de
certificados: organización comercial que emite certificados digitales, realiza un seguimiento de quién está
asignado a un certificado, firma los certificados para verificar su validez y controla qué certificados están
revocados o han caducado) comercial, del administrador de seguridad interna o de un profesional de
tecnologías de la información (IT).
Para obtener más información acerca de las entidades emisoras de certificados que ofrecen servicios
para productos de Microsoft, vea la lista de Miembros del Programa de certificados raíz de Microsoft.
Crear un certificado digital propio para firmar
Dado que el certificado digital que cree no lo ha emitido ninguna entidad emisora de certificados oficial,
los proyectos de macro firmados con tales certificados se conocen como proyectos con firma propia.
Microsoft Office sólo confía en los certificados con firma propia de los equipos que tengan ese certificado
en el almacén de certificados personales.
Crear un certificado de firma propia
1.
2.
Siga uno de estos procedimientos:

En Microsoft Windows Vista, haga clic en el botón Inicio, elija Todos los
programas, haga clic en Microsoft Office, haga clic en Herramientas de Microsoft
Office y, a continuación, haga clic en Certificado digital para proyectos de VBA.
En el cuadro Nombre del certificado, escriba un nombre descriptivo para el
certificado.

En Microsoft Windows XP, haga clic en el botón Inicio, elija Todos los programas,
Microsoft Office, Herramientas de Microsoft Office y, a continuación, haga clic en
Certificado digital para proyectos de VBA. En el cuadro Nombre del certificado,
escriba un nombre descriptivo para el certificado.
Cuando aparezca el mensaje de confirmación del certificado, haga clic en Aceptar.
Para ver el certificado en el almacén de certificados personales, siga este procedimiento:
1.
Abra Windows Internet Explorer.
2.
En el menú Herramientas, haga clic en Opciones de Internet y, a continuación, haga clic en
la ficha Contenido.
3.
Haga clic en Certificados y, a continuación, haga clic en la ficha Personal.
Firmar digitalmente un proyecto de macro
1.
Abra el archivo que contiene el proyecto de macro que desee firmar.
2.
Siga uno de estos procedimientos en los programas de 2007 Microsoft Office system que se
indican:
Word, Excel o PowerPoint

En la ficha Programador del grupo Código, haga clic en Visual Basic.
y,
Si la ficha Programador no está disponible, haga clic en el botón de Microsoft Office
a continuación, haga clic en Opciones de Nombre del programa, donde Nombre de
- 13 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
programa es el nombre del programa que está utilizando, por ejemplo, Opciones de Word.
Haga clic en Más frecuentes y, a continuación, active la casilla de verificación Mostrar ficha
Programador en la cinta de opciones.
Visio, Outlook o Publisher

En el menú Herramientas, seleccione Macro y, a continuación, haga clic en Editor
de Visual Basic.
3.
En el Explorador de proyecto de Visual Basic, seleccione el proyecto que desee firmar.
4.
En el menú Herramientas, haga clic en Firma digital.
5.
Siga uno de estos procedimientos:

Si no ha seleccionado previamente un certificado digital o desea usar otro, haga clic
en Elegir, seleccione el certificado y haga clic en Aceptar dos veces.

Para usar el certificado actual, haga clic en Aceptar.
NOTAS

No firme las macros hasta que se haya probado la solución y esté lista para la distribución,
porque cuando se modifica de algún modo el código de un proyecto de macro firmado, la
firma digital se elimina. De todos modos, si dispone del certificado digital apropiado en su
equipo, el proyecto de macro se volverá a firmar automáticamente una vez guardado.

Si desea impedir que los usuarios de la solución modifiquen la macro accidentalmente e
invaliden la firma, bloquee el proyecto de macro antes de firmarlo. La firma digital sólo
indica que el usuario garantiza que el proyecto no se ha manipulado después de haber
sido firmado, no demuestra que el usuario lo haya escrito. Así pues, bloquear el proyecto
no impide que otro usuario sustituya la firma digital por otra firma. Los administradores
corporativos pueden volver a firmar las plantillas (plantilla: archivo o archivos que contienen
la estructura y las herramientas para dar forma a elementos como el estilo o el diseño de
página de los archivos finalizados. Por ejemplo, las plantillas de Word pueden dar forma a
un documento sencillo, y las plantillas de FrontPage pueden dar forma a un sitio Web
completo.) y complementos (complemento: programa suplementario que agrega funciones
o comandos personalizados a Microsoft Office.) para poder controlar exactamente qué
usuarios podrían operar en sus equipos.

Si crea un complemento que agrega código a un proyecto de macro, el código debe
determinar si el proyecto se ha firmado digitalmente e informar al usuario de las
consecuencias de modificar un proyecto firmado antes de continuar.

Cuando firme macros digitalmente, es importante que obtenga una marca de hora para
que otros usuarios puedan comprobar la firma incluso después de que haya caducado el
certificado de ésta. Si firma proyectos de macro sin ninguna marca de hora, la firma sólo
será válida durante el período de validez del certificado.
- 14 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Modificar una macro
Antes de modificar una macro (macro: acción o conjunto de acciones utilizados para automatizar tareas.
Las macros se graban en el lenguaje de programación de Visual Basic para Aplicaciones.), deberá
familiarizarse con el Editor de Visual Basic (Editor de Visual Basic: entorno en el que puede escribir y
modificar código y procedimientos de Visual Basic para Aplicaciones. El Editor de Visual Basic contiene
un conjunto completo de herramientas de depuración para buscar sintaxis, tiempo de ejecución y
problemas lógicos en el código en uso.). Puede utilizar el Editor de Visual Basic para escribir y modificar
macros adjuntas a los libros de Microsoft Excel.
1.
Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:

Haga clic en el Botón Microsoft Office
Opciones de Excel.

En la categoría Más frecuentes, bajo Opciones principales para trabajar con
Excel, active la casilla de verificación Mostrar ficha Programador en la cinta de
opciones y, a continuación, haga clic en Aceptar.
y, a continuación, haga clic en
2.
Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas
las macros, haga lo siguiente:

En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.

En Configuración de macros, haga clic en Habilitar todas las macros (no
recomendado; puede ejecutarse código posiblemente peligroso) y, a
continuación, haga clic en Aceptar.
NOTA Para ayudar a evitar que se ejecute código potencialmente peligroso, recomendamos que
vuelva a cualquiera de las configuraciones que deshabilitan todas las macros cuando termine de
trabajar con las macros.
3.
En la ficha Programador, en el grupo Código, haga clic en Macros.
4.
En el cuadro Nombre de la macro, haga clic en la macro que desea modificar.
5.
Haga clic en Modificar.
SUGERENCIA Para obtener Ayuda para el Editor de Visual Basic, haga clic en Ayuda de Microsoft
Visual Basic en el menú Ayuda o presione F1.
- 15 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Descripción general de la seguridad de
macros
En Microsoft Office Excel puede elegir la configuración de seguridad de macros para controlar qué ocurre
cuando se abre un libro que contiene macros. Por ejemplo, puede elegir ejecutar macros en función de si
están firmadas digitalmente por un programador incluido en su lista de fuentes de confianza.
Configuración de seguridad de macros y sus efectos
La información siguiente resume cómo funciona la protección antivirus en macros en cada configuración.
En todas las configuraciones, si se tiene instalado software antivirus que funciona con 2007 Microsoft
Office system y si el libro contiene macros, el libro se analiza para buscar virus conocidos antes de abrirlo.
La configuración de seguridad de macros se puede cambiar en el Centro de confianza (botón de
Microsoft Office
, botón Opciones de Excel, categoría Centro de confianza, botón Configuración
del Centro de confianza, categoría Configuración de macros. O bien, en la ficha Programador, en el
grupo Código, botón Seguridad de macros). Sin embargo, si trabaja en una organización, puede que el
administrador del sistema haya cambiado la configuración predeterminada e impida que los usuarios
modifiquen la configuración.
NOTA Cualquier cambio de configuración de macros que realice en Excel, dentro de la categoría
Configuración de macros, sólo se aplicará a Excel y no afectará a los demás programas de Office.
Utilice esta configuración
de macros
Con este objetivo
Deshabilitar
todas
las
macros sin notificación
Utilice este ajuste si no confía en las macros. Se deshabilitan todas las macros contenidas
en los documentos, así como todos los avisos de seguridad que informan de que las
macros están deshabilitadas. Si hay documentos con macros sin firmar que considera de
confianza, puede colocar esos documentos en una ubicación de confianza. Se permite la
ejecución de los documentos situados en ubicaciones de confianza sin que los compruebe
el sistema de seguridad del Centro de confianza.
Deshabilitar
todas
las
macros con notificación
Ésta es la configuración predeterminada. Utilícela si desea deshabilitar las macros pero
desea recibir avisos de seguridad si existen macros. De esta manera, puede elegir cuándo
habilitar las macros caso por caso.
Deshabilitar
todas
las
macros
excepto
las
firmadas digitalmente
Este ajuste es el mismo que el de la opción Deshabilitar todas las macros con
notificación, a excepción de que, si la macro está firmada digitalmente por un editor de
confianza, podrá ejecutarse si ya confía en el editor. Si el editor no es de confianza, se le
notifica este hecho para que, de esa manera, pueda elegir si desea habilitar las macros
firmadas o confiar en el editor. Todas las macros no firmadas digitalmente se deshabilitan
sin ninguna notificación.
Habilitar todas las macros
(no recomendado, puede
ejecutarse
código
posiblemente peligroso)
Utilice esta configuración para permitir temporalmente la ejecución de todas las macros.
Puesto que con este ajuste el equipo es vulnerable a código posiblemente peligroso, no
es recomendable utilizarlo de manera permanente.
Confiar en el acceso al
modelo de objeto de
proyectos de VBA
Esta configuración está dirigida sólo a los programadores.
Firmas digitales y cómo funcionan
versión Office 2007 utiliza la tecnología Authenticode de Microsoft para permitir a los creadores de macros
firmar digitalmente (firma digital: sello electrónico seguro con cifrado que certifica la autenticidad de una
macro o documento. Esta firma confirma que la macro o documento emitido por el equipo o la persona
que lo firma no ha sido alterado.) un archivo o un proyecto de macro (proyecto de macro: colección de
componentes, incluidos formularios, código y módulos de clase, que constituyen una macro. Los
proyectos de macro creados en Microsoft Visual Basic para aplicaciones se pueden incluir en los
complementos y en la mayoría de los programas de Microsoft Office.). El certificado utilizado para crear
- 16 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
esta firma confirma que la macro o el documento proceden del firmante y la firma certifica que la macro o
el documento no se han alterado posteriormente.
Después de instalar su certificado digital (certificado digital: datos adjuntos a un archivo, proyecto de
macro o mensaje de correo electrónico que da fe de su autenticidad, proporciona cifrado seguro o una
firma que se puede comprobar. Para firmar digitalmente proyectos de macro, se debe instalar un
certificado digital.), puede firmar archivos y proyectos de macro.
Firmar macros digitalmente
Sólo debería firmar las macros una vez probada la solución y lista para su distribución ya que, siempre
que se modifica de alguna manera el código de una macro firmada, se quita su firma digital. Sin embargo,
si posee el certificado digital en su equipo, el proyecto de macro se firmará de nuevo automáticamente al
guardarlo. Si desea impedir que los usuarios de su solución cambien automáticamente su proyecto de
macro e invaliden así su firma, bloquee el proyecto de macro antes de firmarlo. Su firma digital sólo indica
que garantiza que este proyecto es seguro. No demuestra que es el autor del proyecto. Por tanto,
bloqueando su proyecto de macro no se impide que otro usuario reemplace la firma digital por otra firma.
Los administradores corporativos deben volver a firmar las plantillas y los complementos para poder
controlar con exactitud lo que los usuarios ejecutan en sus equipos.
Si crea un complemento que agrega código a un proyecto de macro, el código debe determinar si el
proyecto está firmado digitalmente e informar al usuario de las consecuencias que puede tener cambiar
un proyecto firmado.
Obtener un certificado digital para firmar
Puede obtener un certificado digital de una entidad emisora de certificados (entidad emisora de
certificados: organización comercial que emite certificados digitales, realiza un seguimiento de quién está
asignado a un certificado, firma los certificados para verificar su validez y controla qué certificados están
revocados o han caducado.) comercial o del administrador de seguridad o de un profesional de las
tecnologías de la información de su organización.
Para obtener más información sobre las autoridades emisoras de certificados que ofrecen servicios para
los productos de Microsoft, puede ver la lista de miembros del programa Microsoft Root Certificate.
Crear su propio certificado digital para realizar firmas personales
También puede crear su propio certificado para emitir firmas digitales utilizando la herramienta
Selfcert.exe.
NOTA Puesto que los certificados digitales que cree personalmente no están emitidos por una autoridad
emisora de certificados reconocida, los proyectos de macro firmados utilizando un certificado de este tipo
se conocen como proyectos con firma personal. Microsoft Office sólo confía en los certificados de firma
personal en los equipos que tengan almacenado ese certificado en el almacén de Certificados personales.
- 17 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Habilitar
o
deshabilitar
documentos de Office
macros
en
En este artículo es sobre la seguridad de las macros, se explican los riesgos que implica habilitar macros
y cómo el Centro de confianza de 2007 Microsoft Office system puede ayudar a mitigarlos. En este
artículo, el término "documento" puede significar cualquier archivo de Microsoft Office que pueda contener
macros. El término "macro" significa una macro creada mediante Visual Basic para Aplicaciones
(VBA) (Visual Basic para Aplicaciones (VBA): versión del lenguaje de macros de Microsoft Visual Basic
que se utiliza para programar aplicaciones basadas en Microsoft Windows y que se incluye en varios
programas de Microsoft.).
¿Qué es una macro y cuáles son los riesgos de
seguridad?
El propósito de una macro es automatizar tareas de uso frecuente. Aunque algunas macros son
simplemente la grabación de las pulsaciones de tecla o los clic del mouse (ratón), los programadores
escriben macros de VBA (Visual Basic para Aplicaciones (VBA): versión del lenguaje de macros de
Microsoft Visual Basic que se utiliza para programar aplicaciones basadas en Microsoft Windows y que se
incluye en varios programas de Microsoft.) más eficaces que utilizan código que puede ejecutar muchos
comandos en el equipo. Por esta razón, las macros de VBA suponen un riesgo para la seguridad. Un
pirata informático puede pasar una macro malintencionada en un documento que, si se abre, permite que
se ejecute la macro y puede propagar un virus (virus: programa o macro que "infecta" archivos de un
equipo mediante la inserción de copias de sí mismo en ellos. Cuando el archivo infectado se carga en
memoria, el virus puede infectar a otros archivos. Los virus suelen tener efectos secundarios muy
dañinos.) en el equipo.
¿Cómo puede protegerme el Centro de confianza de
macros no seguras?
Antes de permitir que una macro se habilite en un documento, el Centro de confianza comprueba lo
siguiente:

La macro está firmada por el programador con una firma digital (firma digital: sello
electrónico seguro con cifrado que certifica la autenticidad de una macro o documento.
Esta firma confirma que la macro o documento emitido por el equipo o la persona que lo
firma no ha sido alterado.).

La firma digital es válida (válido: se refiere al estado de un certificado comprobado en la
base de datos de una autoridad de certificación y del que se sabe que es legítimo, está
vigente y no ha caducado ni se ha revocado. Los documentos firmados con un
certificado válido y no modificado desde su firma se consideran como válidos.).

Esta firma digital está actualizada (no ha caducado).

El certificado asociado a la firma digital fue emitido por una entidad emisora de
certificados (entidad emisora de certificados: organización comercial que emite
certificados digitales, realiza un seguimiento de quién está asignado a un certificado,
firma los certificados para verificar su validez y controla qué certificados están
revocados o han caducado.) acreditada.

El programador que firmó la macro es un editor de confianza (editor de confianza:
programador de una macro en la que confía para usarla en su propio equipo. Los
editores de confianza se identifican mediante el certificado que utilizaron para firmar
digitalmente la macro. También se conocen como fuentes de confianza.).
Si el Centro de confianza detecta un problema relacionado con estas comprobaciones, la macro se
deshabilita de forma predeterminada y aparece la barra de mensajes para notificarle de que hay una
macro que puede no ser segura.
- 18 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Si hace clic en Opciones en la barra de mensajes, aparece un cuadro de diálogo de seguridad que
permite habilitar la macro. Vea la siguiente sección para saber cómo tomar una decisión segura antes de
hacer clic en una opción.
NOTA En Microsoft Office Outlook 2007 y en Microsoft Office Publisher 2007, las alertas de seguridad
aparecen en cuadros de diálogo, no en la barra de mensajes.
¿Qué debo hacer cuando una advertencia de
seguridad pregunte si deseo habilitar o deshabilitar
una macro?
Cuando aparece un cuadro de diálogo de seguridad, tiene la opción de habilitar la macro o dejarla
deshabilitada. Sólo debe habilitarla si sabe con certeza que procede de una fuente de confianza.
IMPORTANTE Si sabe que el documento y la macro proceden de una fuente de confianza, tienen una
firma válida y no desea volver a recibir notificaciones sobre ellos, en lugar de cambiar la configuración del
Centro de confianza a una configuración de seguridad de macros menos segura, puede hacer clic en la
opción Confiar en todos los documentos de este editor del cuadro de diálogo de seguridad. De esta
forma, se agrega el editor a la lista Editores de confianza del Centro de confianza. Todo el software
procedente de ese editor es de confianza. Si la macro no tiene ninguna firma válida, pero confía en ella y
no desea volver a recibir notificaciones, en lugar de cambiar la configuración predeterminada del Centro
de confianza a una configuración de seguridad de macros menos segura, es mejor mover el documento a
una ubicación de confianza. Los documentos de ubicaciones de confianza se pueden ejecutar sin la
comprobación del sistema de seguridad del Centro de confianza.
- 19 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
En función de la situación, el cuadro de diálogo de seguridad describe el problema específico. La tabla
siguiente muestra la lista de los posibles problemas y da consejos sobre lo que se debe hacer en cada
caso.
Problema
Consejo
La macro no está firmada Dado
que la macro no está firmada
digitalmente, no se puede comprobar
la identidad del editor de macros. Por
lo tanto, no es posible determinar si la
macro es segura o no.
Antes de habilitar macros sin firmar, asegúrese de que la macro procede de una
fuente de confianza. Puede continuar trabajando en el documento aunque no
habilite la macro.
La firma de la macro no es de
confianza Puede que la macro no
sea segura, ya que se ha firmado
digitalmente, la firma es válida y se ha
elegido no confiar en el editor que la
firmó.
Puede confiar (confianza: indica si se confía en el individuo o grupo a quién se le
ha emitido el certificado. La configuración predeterminada es Heredar la
confianza del emisor, lo que significa que se confía en el certificado porque se
confía en el emisor, normalmente una entidad emisora de certificados.)
explícitamente en el editor de la macro haciendo clic en la opción Confiar en
todos los documentos de este editor en el cuadro de diálogo de seguridad.
Esta opción solamente aparece si la firma es válida. Al hacer clic en esta opción
se agrega el editor a la lista Editores de confianza del Centro de confianza.
La firma de la macro no es válida
Puede que la macro no sea segura,
porque se ha firmado digitalmente y la
firma no es válida.
Se recomienda que no habilite macros con firmas no válidas. Una posible razón
para que la firma no sea válida es que se haya manipulado. Para obtener más
información, vea Cómo saber si una firma digital es de confianza.
La firma de la macro ha
caducado Puede que la macro no
sea segura, porque se ha firmado
digitalmente y la firma ha caducado.
Antes de habilitar macros con firmas caducadas, asegúrese de que la macro
procede de una fuente de confianza. Si ha usado este documento en el pasado
sin problemas de seguridad, el riesgo que supone habilitar la macro puede ser
menor.
- 20 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
Cambiar la configuración de seguridad de las
macros de todos los documentos en el
Centro de confianza
La configuración de seguridad de las macros se encuentra en el Centro de confianza. Sin embargo, si
trabaja en una organización, es posible que el administrador del sistema haya cambiado la configuración
predeterminada; por tanto, quizá no pueda hacer cambios en ella.
NOTA Al cambiar la configuración de la macro en el Centro de confianza, sólo cambia para el programa
de Office que esté utilizando. La configuración de la macro no cambia para todos los programas de Office.
Siga estos pasos en estos programas de 2007 Microsoft Office system:
Word, Excel, PowerPoint o Access
1.Haga clic en el botón de Microsoft Office
y, a continuación, en Opciones de Nombre
del programa, donde Nombre de programa es el nombre del programa que está utilizando, por
ejemplo, Opciones de Word.
2.Haga clic en Centro de confianza, en Configuración del Centro de confianza y, a
continuación, en Configuración de ActiveX.
3.Haga clic en las opciones que desee:

Deshabilitar todas las macros sin notificación Haga clic en esta opción si no
confía en las macros. Todas las macros y alertas de seguridad de los documentos se
deshabilitan. Si hay documentos con macros sin firmar en las que sí confíe, puede
poner estos documentos en una ubicación de confianza. Los documentos de
ubicaciones de confianza se pueden ejecutar sin la comprobación del sistema de
seguridad del Centro de confianza.

Deshabilitar todas las macros con notificación Esta es la configuración
predeterminada. Haga clic en esta opción si desea deshabilitar las macros, pero
desea recibir alertas de seguridad si hay macros presentes. De este modo, puede
elegir cuándo habilitar esas macros caso por caso.

Deshabilitar todas las macros excepto las firmadas digitalmente Esta
configuración es igual que Deshabilitar todas las macros con notificación excepto
en que si la macro está firmada digitalmente por un editor de confianza, puede
ejecutarse si ya se ha confiado en el editor. De lo contrario, se le notifica. De este
modo, puede decidir habilitar esas macros firmadas o confiar en el editor. Todas las
macros sin firmar se deshabilitan sin notificación.

Habilitar todas las macros (no recomendado, puede ejecutarse código
posiblemente peligroso) Haga clic en esta opción para permitir que se ejecuten
todas las macros. Esta configuración hace que el equipo sea vulnerable a código
posiblemente malintencionado y no se recomienda.

Confiar en el acceso al modelo de objeto de proyectos de VBA Esta
configuración es sólo para programadores.
SUGERENCIA En Word, Excel y PowerPoint, puede abrir el cuadro de diálogo de configuración de
seguridad de macros desde la ficha Programador en la cinta de opciones. Si la ficha Programador no
está disponible, haga clic en el botón de Microsoft Office
y, a continuación, haga clic en Opciones
de Nombre del programa, donde Nombre de programa es el nombre del programa que está utilizando,
por ejemplo, Opciones de Word. Haga clic en Más frecuentes y, a continuación, active la casilla de
verificación Mostrar ficha Programador en la cinta de opciones.
Visio o Publisher
1.En el menú Herramientas, haga clic en Centro de confianza.
2.Haga clic en Configuración de macros.
3.Haga clic en las opciones que desee:

Deshabilitar todas las macros sin notificación Haga clic en esta opción si no
confía en las macros. Todas las macros y alertas de seguridad de los documentos se
- 21 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Macros en Excel 2007
deshabilitan. Si hay documentos con macros sin firmar en las que sí confíe, puede
poner estos documentos en una ubicación de confianza. Los documentos de
ubicaciones de confianza se pueden ejecutar sin la comprobación del sistema de
seguridad del Centro de confianza.

Deshabilitar todas las macros con notificación Esta es la configuración
predeterminada. Haga clic en esta opción si desea deshabilitar las macros, pero
desea recibir alertas de seguridad si hay macros presentes. De este modo, puede
elegir cuándo habilitar esas macros caso por caso.

Deshabilitar todas las macros excepto las firmadas digitalmente Esta
configuración es igual que Deshabilitar todas las macros con notificación excepto
en que si la macro está firmada digitalmente por un editor de confianza, puede
ejecutarse si ya se ha confiado en el editor. De lo contrario, se le notifica. De este
modo, puede decidir habilitar esas macros firmadas o confiar en el editor. Todas las
macros sin firmar se deshabilitan sin notificación.

Habilitar todas las macros (no recomendado, puede ejecutarse código
posiblemente peligroso) Haga clic en esta opción para permitir que se ejecuten
todas las macros. Esta configuración hace que el equipo sea vulnerable a código
posiblemente malintencionado y no se recomienda.

Confiar en el acceso al modelo de objeto de proyectos de VBA Esta
configuración es sólo para programadores.
Outlook
1. En el menú Herramientas, haga clic en Centro de confianza.
2. Haga clic en Configuración de macros.
3. Haga clic en las opciones que desee:

Ninguna advertencia y desactivar todas las macros Haga clic en esta opción si
no confía en las macros. Todas las macros y alertas de seguridad de los
documentos se deshabilitan.

Advertencias para todas las macros Esta es la configuración predeterminada.
Haga clic en esta opción si desea deshabilitar las macros, pero desea recibir alertas
de seguridad si hay macros presentes. De este modo, puede elegir cuándo habilitar
esas macros caso por caso.

Advertencias para macros firmadas, deshabilitar todas las macros no firmadas
Esta configuración es igual que Deshabilitar todas las macros con notificación
excepto en que si la macro está firmada digitalmente por un editor de confianza,
puede ejecutarse si ya se ha confiado en el editor. De lo contrario, se le notifica. De
este modo, puede decidir habilitar esas macros firmadas o confiar en el editor. Todas
las macros sin firmar se deshabilitan sin notificación.

Ninguna comprobación de seguridad para las macros (No recomendado) Haga
clic en esta opción para permitir que se ejecuten todas las macros. Esta
configuración hace que el equipo sea vulnerable a código posiblemente
malintencionado y no se recomienda.
- 22 –
Compilado por Guillermo Cruz A. – Proyecto OID0013 – Convenio 114 MPS-OIM
Descargar