Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Si utilizas Excel frecuentemente es posible que en alguna ocasión te hayas encontrado ejecutando una
misma serie de acciones una y otra vez. Esas acciones que haces repetidas veces se podrían
automatizar con una macro.
Una macro es un conjunto de comandos que se almacena en un lugar especial de Excel de manera que
están siempre disponibles cuando los necesites ejecutar.
Por ejemplo, si todas las mañanas creas un reporte de ventas y en ese reporte siempre das el mismo
formato a los textos, se podría crear una macro para que lo haga automáticamente por ti. Las macros
se utilizan principalmente para eliminar la necesidad de repetir los pasos de aquellas tareas que
realizas una y otra vez.
Lenguaje de Programación
Las macros se escriben en un lenguaje de computadora especial que es conocido como Visual Basic for
Applications (VBA). Este lenguaje permite acceder a prácticamente todas las funcionalidades de Excel
y con ello también ampliar la funcionalidad del programa.
Si no eres un programador de computadoras, Excel provee de una herramienta especial que permite
crear una macro sin necesidad de conocer los detalles del lenguaje de programación.
1
1. Seleccionar un rango de celdas
2. Aplicar los formatos de bordes
3. Aplicar los formatos de relleno
Todos estos pasos se guardan con un nombre de macro, los cuales se podrá ejecutar más adelante con
un solo clic.
6. Luego podremos elegir la ficha Programador, tal como se muestra en la siguiente figura
2
Seguridad de macros
Microsoft Excel 2013 está configurado por defecto el bloqueo de las macros como medida de
precaución de la presencia de alguna macrovirus en el sistema, esta configuración se puede cambiar
para especificar las macros que se ejecutarán.
Para modificar la seguridad de macros, realice los siguientes pasos:
1. Seleccione la ficha Programador / DESARROLLADOR
3. En el panel derecho de la siguiente ventana de diálogo, seleccione Habilitar todas las macros y active la
casilla Confiar en el acceso al modelo de objetos de proyectos de VBA
3. En la siguiente ventana de diálogo, asignar un nombre a la macro, por ejemplo Formatos, una letra para el
atajo por ejemplo la letra f (minúscula) y una descripción de la macro (opcional).
3
4. Realice cuidadosamente todas las operaciones que desee grabar, por ejemplo: Seleccione una celda en la
hoja Prueba
• Seleccionar la ficha Inicio, luego active la caja: Formato de celdas y seleccione la ficha Fuente
• En la siguiente ventana de diálogo aplique formato de bordes y relleno, según las indicaciones del
profesor.
Nota: Cuando la macro se está ejecutando, guarda todas las acciones que realicemos.
5. Por último para detener la grabación seleccione la ficha Programador, haga clic en el botón Detener
grabación.
4
Ejecutar una macro
Para ejecutar una macro, se puede realizar de varias formas:
3. En la siguiente ventana de diálogo, elija la macro que desee ejecutar 4. Haga clic en Ejecutar
Para guardar un libro que contenga macros, realice los siguientes pasos:
1. Seleccione el menú Archivo
2. Seleccione la opción Guardar
3. Como es la primera vez que se guarda el libro con macro, aparecerá la siguiente ventana de diálogo,
elija el botón No para guardar el libro habilitado para macros
5
4. En la siguiente ventana de diálogo, el nombre del libro será Demo_macros y elija como tipo de
archivo Libro de Excel habilitado para macros
6
Agregar un botón a la barra de herramientas de acceso rápido
Realice los siguientes pasos:
1. Seleccione el archivo para personalizarlo
2. En comandos disponibles: seleccione Macros
3. Seleccione la macro creada (en este caso: Formato)
4. Luego seleccione: Agregar
5. Seleccione el botón
6. Elija el botón: Modificar…
a) Elija un icono (se recomienda uno que este asociado con la macro)
b) Cambie el nombre para mostrar y Aceptar.
7. Finalmente Aceptar
7
8. El resultado final será
9. Finalmente pruebe que el botón funcione, seleccione el rango de celdas de la hoja Tabla1 y haga
clic en el botón Bordes personales, en forma similar con los rangos de las listas de las hojas Tabla2
y Tabla3
Referencia de celdas
Referencias relativas y absolutas
Referencias absolutas
Ocurre cuando al ejecutar una macro que guarda el desplazamiento de celdas lo hace tomando como
referencia la posición de la celda donde se empezó la grabación. Veamos el siguiente ejemplo del
tratamiento del movimiento del puntero de celdas al ejecutar una macro, por ejemplo deseamos
desplazar el puntero de celda al final de la siguiente fila y desplazarnos una fila hacia abajo.
8
2. Seleccione la ficha Programador.
3. Haga clic en Grabar macro.
4. Asigne como nombre de la macro Movimiento y la letra de método abreviado será la letra m.
5. Desplace el puntero de celda a la última columna y descienda una fila, realice el movimiento
utilizando las teclas direccionales del teclado.
6. Detener la macro.
8. El resultado que esperamos encontrar es que el puntero de celda se desplace cuatro columnas a
la derecha y una fila hacia abajo, pero sin embargo se mueve a la celda F4, tal como se hizo cuando
se grabó la macro. Esto es debido a que Microsoft Excel por defecto tiene predeterminado un
direccionamiento absoluto cuando se graba el movimiento del puntero de celda. Desplace el
puntero de celda a la última columna y descienda una fila, realice el movimiento utilizando las
teclas direccionales del teclado.
9
Referencias relativas
Para ver el direccionamiento relativo trabajaremos con los mismos datos del ejemplo anterior, pero
esta vez antes de iniciar la grabación de la macro en el paso 3, seleccione primero el botón de usar
referencias relativas.
Si ahora probamos la ejecución de la macro Relativo estando en la celda H3, veamos lo que ocurre.
Guarde los cambios y cierre el libro
Caso práctico 02
Active el libro: 03_Macros02, para crear macros automáticas de filtros avanzados y registro de datos
REALIZAR 01:
En la hoja: Trabajadores, se tiene la lista de una planilla de remuneraciones y se necesitan realizar
diferentes filtros avanzados en la siguiente hoja: Filtros - Se ha nombrado los siguientes rangos:
En la hoja Trabajadores:
PERSONAL ← [A3:K63]
10
En la hoja Filtros:
CONDICION ← [C2:K3]
SALIDA ← [A3:K6]
Solución:
1. Ubicado en la hoja: Filtros
2. Seleccione la ficha: DESARROLLADOR, luego seleccione el botón: Grabar macro
3. En la caja de dialogo: Grabar macro, completar los controles: y Aceptar
11
2. Coloque algún criterio: por ejemplo en la celda F3, digite el dato C
3. Ejecutar la macro con la combinación: Ctrl + h
4. El resultado solo deberá mostrar a los trabajadores que son Casados
12
Guarde el libro como: Libro activado para macros
Caso práctico 03
Utilizando el mismo libro: 03_Macros02, crearemos la macro automática para registro de datos
REALIZAR 02:
En la hoja: Registro, se tiene la lista de una tabla de productos y un área de Movimientos, se necesita realizar el
registro de los movimientos de los productos en la siguiente hoja: Control En la hoja Registro:
- Se ha nombrado el rango:
ITEM ← [A3:A14]
- Luego se ha credo la tabla: ARTEFACTOS, con la lista principal
- También se ha validado la celda: H2, para que solo acepte datos del rango: ITEM
- Finalmente se han colocado fórmulas de: SI.ERROR con BUSCARV en las celdas H4,H5 y H6 para encontrar las
características del código elegido. En el total una formula simple de multiplicación complementada con la
función: SI.ERROR
- Los datos para: Fecha y Cantidad, se deben digitar libremente
En la hoja Control:
13
- Se han insertado los campos que se requiere registrar (con una copia y pegado especial de valores, con la
opción Transponer)
- Como artificio se ha colocado un cero como primer código y una fecha cualquiera
Solución:
1. En la hoja: Registro, celda H2, elija un código (por ejemplo: PR-004), aparecerán los resultados de las
búsquedas correspondientes a: Descripción, Marca y Precio. Los datos de fecha (por ejemplo: 05/06/2015)
y cantidad (por ejemplo: 3) los ingresa de manera libre.
2. Ubicado en la celda H8, Seleccione la ficha: DESARROLLADOR y active el botón: Usar referencias relativas.
3. Luego seleccione el botón: Grabar macro y configure los controles: y Aceptar
14
4. Seleccione el rango: [H2:H8] e indique la orden Copiar: Ctrl + C
15
9. Configure la caja de dialogo: (seleccione: Valores y active: Transponer) y Aceptar
11. Seleccione la hoja: Registro, pulse la tecla: Esc, luego seleccione la celdas: H2:H3 y H7 y pulse la tecla: Supr
5. Puede volver a ingresar un nuevo código con una fecha y cantidad correspondiente, y vuelva a ejecutar la
macro
Nota: puede insertar un control tipo: botón de comando y asociarlo con la macro: Registro
16
Guarde los cambios y cierre el libro
17