You are on page 1of 16

MACROS CON EXCEL

Captulo

Introduccin a macros en Excel 2007


A lo largo de este primer captulo comenzaremos a recorrer el camino de las macros en Excel 2007. Para eso, conoceremos las herramientas especiales de esta aplicacin para trabajar con ellas, para saber qu utilidad poseen y cundo es conveniente utilizarlas.
Las macros: qu son? El lenguaje VBA El formato de los archivos La ficha del programador Grupo: Cdigo Grupo: Controles Grupo: XML La seguridad: Centro de confianza Editores y ubicaciones de confianza Configuracin de ActiveX Configuracin de macros Opciones de privacidad Resumen Actividades 16 16 16 18 19 23 26 26 27 28 29 29 29 30

SERVICIO DE ATENCIN AL LECTOR: lectores@redusers.com

1. INTRODUCCIN A MACROS EN EXCEL 2007

LAS MACROS: QU SON?


Desde el punto de vista general, podemos decir que las macros nos ayudan a automatizar tareas. Son partes de cdigo de programacin que es interpretado por Excel y lleva a cabo distintas acciones o una sucesin de tareas. De esta forma, con una macro podremos realizar tareas repetitivas muy fcilmente. Sin embargo, ste no es el nico uso que podemos darle a una macro ya que, si utilizamos el lenguaje de programacin en el que hablan las macros, Visual Basic para Aplicaciones (VBA), podremos desarrollar desde tareas y funciones simples para usos especficos hasta aplicaciones complejas.

El lenguaje VBA
El lenguaje de programacin de las macros es Visual Basic para Aplicaciones (VBA). Conviene pensarlo como un lenguaje de programacin comn y corriente pero con algunas particularidades. Su entorno de desarrollo est plenamente integrado con las aplicaciones de Microsoft Office. Las aplicaciones que creamos con este lenguaje no pueden ejecutarse en forma autnoma, es decir, siempre formarn parte de algn documento o alguna plantilla de Office.

Interaccin con el resto de Office


Con VBA podremos integrar ms an las distintas aplicaciones de Microsoft Office. Con una macro de Excel 2007 podremos comunicarnos con el resto de las aplicaciones de este paquete de oficina muy fcilmente. Toda esta interaccin y los conocimientos sobre el manejo de estas herramientas nos permitirn construir aplicaciones de alta complejidad en poco tiempo.

El formato de los archivos


Excel 2007 nos presenta una forma diferente de guardar nuestras planillas ya que en esta versin se crea una separacin entre los archivos normales y aquellos que incluyen macros de Visual Basic para Aplicaciones o controles ActiveX. De esta forma, con slo ver la extensin del archivo podremos determinar si contiene cdigo VBA o controles ActiveX. Este cambio se genera, principalmente, por una cuestin de seguridad, para que podamos identificar los archivos antes de abrirlos.

Guardar como
Repasemos las distintas formas que tiene Excel 2007 de guardar las planillas. Libro de Excel: guarda en el formato predeterminado de archivo, con extensin .XLSX. Cabe aclarar que estos archivos no pueden contener macros de Visual Basic para Aplicaciones ni controles ActiveX.
16

Las macros: qu son?

Libro de Excel habilitado para macros: de esta forma debemos guardar los archivos que posean macros o controles ActiveX, en los que la extensin ser .XLSM. Al grabar un archivo que contenga este tipo de datos, Excel 2007 nos advertir que posee macros y que debemos grabarlo con esta extensin particular. De omitir esta advertencia, el libro se guardar con la extensin predeterminada y se eliminar todo cdigo de macro o control ActiveX incluido. Debemos tener en cuenta estas advertencias para no cometer errores que nos hagan perder nuestro trabajo. Libro binario de Excel: guarda los archivos en el formato binario de Microsoft Excel 2007 (BIFF12), cuya extensin es .XLSB. Libro de Excel 97-2003: esta opcin nos servir para guardar un archivo creado con Excel 2007 y mantener la compatibilidad con las versiones anteriores del programa. En este formato podremos guardar nuestros archivos que incluyan VBA y slo perderemos los cambios entre las novedades que presenta Excel 2007 que no estn incluidas en las versiones anteriores. PDF o XPS: archivo de diseo fijo que garantiza que, cuando se vea o se imprima el documento, se conserve exactamente el formato deseado y que los datos no se puedan cambiar con facilidad. Otros formatos: tambin podremos guardar nuestro libro como un archivo de texto, una plantilla de Excel o una pgina web, por ejemplo. En ninguno de estos casos es posible incluir macros. Para poder guardar nuestros archivos con las extensiones correctas, debemos acceder al comando Guardar como incluido dentro del Botn de Office o presionar la tecla de funciones F12 de nuestro teclado.

Figura 1. stas son las opciones para guardar archivos que encontramos dentro del Botn de Office.
17

1. INTRODUCCIN A MACROS EN EXCEL 2007

LA FICHA DEL PROGRAMADOR


Dentro de la cinta de opciones encontramos diferentes fichas con herramientas para explotar Excel 2007 a fondo. Entre ellas, existe una ficha de opciones especfica para interactuar con VBA: la ficha del programador. Esta ficha es especial y no se encuentra disponible dentro de la instalacin bsica, por lo que debemos modificar algunas opciones para poder utilizarla. Para activar la ficha Programador debemos dirigirnos a las Opciones de Excel incluidas dentro del Botn de Office. Una vez all, dentro del grupo de opciones Ms frecuentes y bajo el ttulo Opciones principales para trabajar con Excel, debemos incluir una tilde en el casillero Mostrar ficha Programador en la cinta de opciones.

Figura 2. Son muchas las opciones de Excel 2007 que se pueden modificar en esta ventana.

ARCHIVOS SIN MACROS PERO CON EXTENSIN .XLSM

Aunque nuestra planilla no contenga cdigo Visual Basic para Aplicaciones (VBA) o controles ActiveX, podremos guardarla con la extensin .XLSM sin ningn inconveniente, aunque no sucede lo mismo en forma inversa. De esta forma, podremos prever archivos que en un futuro contengan macros si tener que cambiar su extensin a posteriori.

18

La ficha del programador

Con la ficha Programador podremos acceder a funciones especficas, que encontraremos divididas en tres grupos principales: Cdigo, Controles y XML. A continuacin haremos un recorrido por las distintas herramientas que contiene cada uno para poder movernos ms rpidamente entre estas opciones.

Grupo: Cdigo
Dentro de este grupo encontraremos los comandos que accionan herramientas relacionadas con el cdigo VBA de las macros.

Figura 3. La ficha Programador se presenta de igual forma que el resto de las cintas de opciones.

Grupo Cdigo: Visual Basic


El primer icono, denominado Visual Basic, iniciar el editor de cdigo VBA. Este editor es la herramienta principal para la elaboracin de macros complejas, dado que nos permite realizarle modificaciones al cdigo de las macros en una ventana especial con un formato similar a los lenguajes de programacin (le dedicaremos un captulo especial a esta herramienta). Adems de abrirlo desde este icono, tambin podremos iniciar el editor si presionamos la combinacin de las teclas ALT + F11.

Grupo Cdigo: Grabar macros


Desde este comando lanzaremos la grabadora de macros. Esta herramienta guarda todas las acciones que realizamos y las transforma en cdigo VBA. En el prximo captulo desarrollaremos esta herramienta en detalle.

ANCHO DE COLUMNAS POR DEFECTO

Dentro de las propiedades de cada hoja, que podemos modificar con la opcin Propiedades incluida en el grupo Controles de la ficha Programador (tambin es posible realizarlo mediante el Editor de Visual Basic), encontraremos la opcin StandardWidth, que sirve para cambiar el ancho de las columnas definido por defecto por Excel 2007.

19

1. INTRODUCCIN A MACROS EN EXCEL 2007

Grupo Cdigo: Macros


El botn Macros inicia la ventana mediante la cual podremos ejecutar las macros.

Figura 4. Una ventana simple donde visualizaremos las distintas macros que estn incluidas en el libro actual de trabajo.

Esta ventana nos mostrar las macros incluidas en los distintos libros abiertos o particularmente en alguno de los que se encuentren abiertos. Aqu tambin encontraremos las opciones ms sencillas para administrar nuestras macros: Ejecutar: ejecuta la macro seleccionada en el cuadro de dilogo. Paso a paso: iniciar el editor de Visual Basic en forma automtica y se ejecutar la macro seleccionada instruccin por instruccin. Esto es muy til al momento de analizar el correcto funcionamiento de una macro y solucionar posibles problemas. Modificar: con este botn tambin podremos iniciar el editor de VBA para realizar cambios en nuestras macros. Eliminar: elimina directamente la macro seleccionada.

MTODOS ABREVIADOS

La mayora de los atajos de teclado predeterminados de Excel 2007 son la combinacin de las teclas CTRL o ALT y alguna adicional. Al asignarle un mtodo abreviado a una macro podemos evitar reemplazar un atajo ya existente si a la combinacin le adicionamos la tecla MAYS. De esta forma, los mtodos abreviados de las macros podran ser CTRL + MAYS + el carcter vlido que elijamos.

20

La ficha del programador

Opciones: es posible agregar un atajo de teclado especfico para una macro y tambin incluir una descripcin de sta. Si a una macro le agregamos un atajo de teclado ya existente, a partir de ese momento, y cuando tengamos abierto el libro que incluye esa macro, al utilizar este atajo de teclado se ejecutar la macro y se reemplazar la instruccin predeterminada de Excel. Esto volver a su punto inicial cuando modifiquemos el atajo de teclado o eliminemos la macro.

Figura 5. Para acelerar nuestro trabajo, a las macros que usamos de forma cotidiana conviene configurarlas para que se ejecuten con un atajo de teclado.

Grupo Cdigo: Usar referencias relativas


Cuando hablamos de macros, las referencias indican desde dnde y a qu lugar debemos movernos. En este sentido, dentro del grupo de opciones Cdigo encontramos un botn que nos permite alternar entre usar o no usar referencias relativas. Podemos decir que las referencias fijas son inamovibles e indican una determinada coordenada (celda) o un grupo de ellas dentro de la hoja de clculo. Por el contrario, las referencias relativas realizan, a partir de la ubicacin de la celda actual, los

OTRA FORMA DE SALIR DE EXCEL Y DEL EDITOR DE VBA

Para salir de Microsoft Excel podremos utilizar la opcin incluida dentro del Botn de Office o utilizar la combinacin de las teclas ALT + F4, que dar por finalizada la sesin actual del programa. Para salir del Editor de VBA, podremos utilizar el atajo ALT + Q, que nos llevar de vuelta a la planilla de Excel en la que estbamos trabajando.

21

1. INTRODUCCIN A MACROS EN EXCEL 2007

movimientos indicados en la macro. Para tratar de comprenderlo mejor, veamos un ejemplo. Para eso construimos dos macros simples. En la primera (con referencias fijas), partiremos desde la celda A1 y nos desplazaremos dos celdas hacia abajo.

Figura 6. Luego aprenderemos a construir este tipo de macros y otras de mayor complejidad.

La macro se sita en A3, dos celdas debajo de A1, el punto de partida inicial. La referencia es fija porque independientemente de donde nos encontremos situados al momento de ejecutar la macro, sta se dirigir a la celda A3. Las referencias relativas funcionan de forma muy distinta, ya que el punto de partida ser siempre la celda donde nos encontremos situados al momento de ejecutar la macro en cuestin. Si utilizamos el mismo ejemplo anterior, cuando ejecutemos la macro se seleccionar la celda que se encuentre dos lugares por debajo de la posicin actual.

Figura 7. Dependiendo de la tarea que realicemos, nos resultar de diferente utilidad el uso de las referencias relativas o fijas.

Grupo Cdigo: Seguridad de macros


Con este botn accederemos a la configuracin de las opciones de seguridad relacionadas con las macros. Ms adelante veremos en profundidad los detalles sobre las herramientas de seguridad y la forma de utilizarlas.
22

La ficha del programador

Grupo: Controles
Los controles pueden ser algo tan simple como un cuadro de texto o un botn, o algo ms complejo como una aplicacin. Estos controles podrn ser incrustados dentro de nuestras planillas o directamente en formularios especficos. De esta forma, relacionaremos las celdas de la planilla, el cdigo VBA y los controles ActiveX.

Grupo Controles: Insertar


Con el botn Insertar podremos incluir los diferentes controles que nos proporciona Microsoft Excel 2007 por defecto.

Figura 8. Los controles nos resultarn de mucha utilidad para generar interfaces amigables para los usuarios de nuestras aplicaciones.

Los controles de formulario son los botones, los cuadros de texto, las etiquetas, los botones de opcin, los cuadros combinados, etctera. Los controles ActiveX se utilizan en sitios web y en las aplicaciones del equipo, pero no son soluciones autnomas sino que slo pueden ejecutarse desde el interior de los programas que los hospedan, como Windows Internet Explorer y los programas de Microsoft Office.

Grupo Controles: Modo Diseo


Al incluir controles, tanto de formulario como ActiveX, en nuestras planillas, stos quedarn activos, es decir, cuando los presionemos se ejecutar la tarea deseada y por lo tanto no podremos modificarlos. Si presionamos el comando Modo Diseo, los controles incluidos ya no se ejecutarn directamente y podremos ajustar sus opciones. Para salir de este modo, debemos presionar el comando de nuevo.

EDITAR CONTENIDO DE CELDAS

El contenido de las celdas se puede modificar directamente en ellas si hacemos clic con el mouse. Tambin se pueden realizar las modificaciones del contenido de las celdas en la Barra de frmulas. Para editar el contenido de una celda debemos posicionarnos sobre ella y presionar la tecla F2 o hacer doble clic sobre su contenido.

23

1. INTRODUCCIN A MACROS EN EXCEL 2007

Figura 9. El aspecto de los botones de formulario y ActiveX es muy similar, pero la forma de asignarles instrucciones y modificar sus propiedades es bastante diferente.

Grupo Controles: Propiedades


Desde aqu podremos modificar las diferentes opciones referidas a los controles ActiveX incrustados. Este grupo de propiedades ser diferente, dependiendo del tipo de control que tengamos seleccionado. Son muy variadas las opciones que se pueden modificar y stas pueden estar ordenadas alfabticamente u organizadas por categoras.

Figura 10. Slo podremos seleccionar los controles ActiveX si estamos en Modo Diseo.

Otra manera de acceder a las propiedades de un control es seleccionarlo, si est en Modo Diseo, y presionar el botn derecho del mouse y seleccionar la opcin Propie24

La ficha del programador

dades del men que se abre. Las caractersticas modificables son muy amplias y las analizaremos con el pasar de los captulos. Encontraremos un grupo de propiedades que ajustan la apariencia y la fuente del control, otro grupo que modifica su comportamiento y una categora denominada Varias, que incluye opciones diversas.

Grupo Controles: Ver cdigo


Con esta instruccin se abrir el editor VBA y nos mostrar el cdigo correspondiente al control elegido. Este comando tambin podremos ejecutarlo si seleccionamos (con Modo Diseo activado) un control ActiveX y elegimos la opcin Ver cdigo dentro de la lista desplegable que aparece al presionar el botn derecho del mouse.

Figura 11. Si el Modo Diseo no se encuentra activado, no podremos seleccionar el control deseado.

Grupo Controles: Ejecutar cuadro de dilogo


Por ltimo, podemos decir que la opcin Ejecutar cuadro de dilogo, del grupo Controles, nos permite ejecutar un cuadro de dilogo personalizado de Excel 5.0. Estos

MACROS: EJECUCIN AUTOMTICA

Si lo necesitamos, podemos realizar una macro de ejecucin automtica, lo que significa que se ejecutar al abrir un archivo. Para lograrlo, es necesario incluir el cdigo VBA que deseemos ejecutar al abrir el archivo dentro de los objetos ThisWorkbook del editor de macros. De todas maneras, este tema lo analizaremos en profundidad ms adelante.

25

1. INTRODUCCIN A MACROS EN EXCEL 2007

cuadros son similares a los formularios de VBA, pero son parte del ncleo de Excel (no VBA). Para crearlos hacemos clic con el botn derecho del mouse sobre una hoja del libro y elegimos la opcin Insertar. En la ventana que se abre, seleccionamos Dilogo de Excel 5.0. Con el botn Ejecutar cuadro de dilogo podremos mostrar la ventana y es posible visualizar este tipo de cuadros mediante instrucciones VBA.

Grupo: XML
Antes de ver la utilidad de las herramientas de este grupo, debemos hacer algunos comentarios sobre XML (sigla en ingls de eXtensible Markup Language). Para entenderlo, es til comprender la idea del marcado de datos. Mediante el marcado de los documentos es como se define la estructura, el significado y la apariencia de la informacin de un documento (algo as como la tarea que realiza el control de cambios de Word). Los documentos XML contienen etiquetas que definen estas caractersticas. Dado que estas etiquetas definen la estructura y el significado de los datos, se pueden volver a utilizar de muchas maneras. As, es posible utilizar un sistema para generar los datos marcados con etiquetas XML y despus procesarlos en otros sistemas. Para no entrar en tecnicismos, podemos decir que la utilizacin de Excel 2007 (y del paquete Microsoft Office 2007) de este lenguaje ampla las conexiones que podemos realizar con otros sistemas y la forma de administrar los datos. Este grupo de herramientas incluye diferentes opciones relacionadas con XML. No entraremos en detalle sobre ellas ya que no es el objetivo de esta obra pero si queremos, podemos obtener ms informacin en la ayuda de este programa o en su sitio http://office.microsoft.com/es-hn/excel/.

LA SEGURIDAD: CENTRO DE CONFIANZA


Si presionamos el botn denominado Seguridad de macros, que se incluye dentro del grupo Cdigo en la ficha Programador, accederemos a la configuracin del Centro de confianza de Excel 2007. En l encontraremos la configuracin de seguridad

NOMBRES DE RANGOS

Cuando definamos nombres para rangos podremos utilizarlos dentro de funciones o expresiones que incluyamos en nuestras planillas. Adems de esto, podremos utilizarlos para hacer referencia a este grupo de celdas dentro de Macros, lo que nos resultar de mucha utilidad cuando realicemos trabajos que sean ms complejos.

26

La seguridad: Centro de confianza

y la privacidad de Excel 2007. Dentro del Centro de confianza encontraremos distintos grupos de opciones, como veremos a continuacin.

Figura 12. Tambin es posible acceder al Centro de confianza mediante las Opciones de Excel incluidas dentro del Botn de Office.

Editores y ubicaciones de confianza


Un editor es un programador que ha creado una macro, un control ActiveX, un complemento u otra extensin de aplicacin para uso de todos los usuarios. Estos editores son programadores que deben acreditarse con credenciales vlidas. Para esto, el proyecto de cdigo debe estar firmado digitalmente (sello electrnico seguro con cifrado que certifica la autenticidad de una macro o un documento). Esta firma debe ser vlida y estar actualizada (no caducada).

LAS MACROS NOS AYUDAN

Las macros podrn solucionarnos muchos problemas de control de datos o de repeticin de acciones. Es vital aprender su manejo para poder operar con mayor familiaridad. Aunque la grabadora de macros nos ser de mucha utilidad, siempre es necesario realizar una depuracin de las lneas de cdigo para eliminar lneas e instrucciones innecesarias.

27

1. INTRODUCCIN A MACROS EN EXCEL 2007

De esta forma, si se ejecuta un cdigo que no cumpla con estos criterios, el Centro de confianza deshabilitar el cdigo en forma automtica y aparecer un mensaje de aviso. Cuando aparezca un cuadro de dilogo de seguridad, tendremos la opcin de dejar la macro deshabilitada, habilitarla o confiar en el editor. Para esto hacemos clic en la opcin Confiar en todos los documentos de este editor. Por su parte, las Ubicaciones de confianza son sitios seguros en los que confiamos. Los cdigos ejecutados desde estas ubicaciones no emitirn advertencias de seguridad.

Figura 13. Es posible deshabilitar todas las ubicaciones de confianza si seleccionamos la opcin correcta dentro de este grupo.

Configuracin de ActiveX
Esta seccin nos permitir habilitar o deshabilitar la utilizacin de controles ActiveX. Podremos elegir entre habilitar o preguntar antes de hacerlo.

Figura 14. La tercera opcin es la predeterminada por Excel 2007.


28

La seguridad: Centro de confianza

Configuracin de macros
Para las macros que no se encuentren dentro de una ubicacin de confianza, existen algunas opciones que nos permitirn deshabilitar las macros con o sin notificacin, deshabilitar todas las macros con excepcin de aquellas que se encuentren firmadas digitalmente o habilitar todas las macros. sta es la opcin menos recomendada desde el punto de vista de la seguridad.

Opciones de privacidad
Desde el Centro de confianza tambin podremos modificar opciones relacionadas con conexiones externas (Contenido externo) y las Opciones de privacidad.

RESUMEN
En este primer captulo nos hemos dedicado a analizar los principales aspectos relacionados con las macros, qu son y para qu sirven. Activamos y recorrimos la ficha Programador y aprendimos sobre todos sus comandos. Trabajamos con controles de formulario y ActiveX, y mostramos los comandos que nos ayudan a administrarlos. Conocimos el Centro de confianza de Excel 2007 y navegamos por las distintas categoras de opciones de seguridad y privacidad.

29

ACTIVIDADES
EJERCICIOS PRCTICOS
1 Agregue la ficha de opciones Programador. Utilice el Botn de Office como se indic al comienzo del captulo. 2 Recorra los distintos comandos incluidos en el grupo Cdigo. 3 Analice el grupo de opciones Controles y repase las propiedades de los distintos controles ActiveX que pueden ser incrustados de forma simple. 5 Busque informacin en Internet sobre los principales aspectos de las macros en Microsoft Excel 2007 y los diferentes usos potenciales que tienen. 4 Personalice las opciones de seguridad de macros desde el Centro de confianza. Modifique las opciones predefinidas. Acceda mediante el Botn de Office.

30

You might also like