
MACRO
Una macro (del griego μακρο; significa «grande»), abreviatura de macroinstrucción, es una serie de instrucciones que se almacenan para que se puedan ejecutar de forma secuencial mediante una sola llamada u orden de ejecución. Dicho de otra forma, una macroinstrucción es una instrucción compleja, formada por otras instrucciones más sencillas. Esto permite la automatización de tareas repetitivas.
El término no se aplica a una serie de instrucciones escritas en la línea de comandos enlazadas unas con otras por redirección de sus resultados (piping) o para su ejecución consecutiva.
Las macros suelen almacenarse en el ámbito del propio programa que las utiliza y se ejecutan pulsando una combinación especial de teclas o un botón especialmente creado y asignado para tal efecto.
La diferencia entre una macroinstrucción y un programa es que en las macroinstrucciones la ejecución es secuencial y no existe otro concepto del flujo de programa, y por tanto, no puede bifurcarse.
Macros vba en Excel.
Las macros Excel facilitan el trabajo.
Cada día las grandes y pequeñas empresas están descubriendo el poder de utilizar conjuntamente las macros con Excel, las compañías requieren de programas informáticos realizados a "medida" de sus necesidades, para gestionar de manera automática, rápida y eficaz los procesos internos del negocio.
A la vez muchas personas en su trabajo diario realizan tareas repetitivas frente a sus hojas Excel, desperdiciando días enteros en realizar informes de manera manual los cuales, con un simple clic a un botón en cuestión de segundos estaría realizado.
Las macros nos permiten automatizar y realizar tareas complejas, aumentando la eficiencia y eficacia del trabajo.
¿Que ventajas me aporta el disponer de macros en mis hojas Excel?.
Las macros en Excel son programas realizados a medidaRealización de programas a medida, cada empresa posee sus peculiaridades y características, en muchas ocasiones se adquieren paquetes de software estandarizado que no cumplen las expectativas iniciales y que acaban por no aportar una solución real a las necesidades del negocio, mediante las macros en Excel cada programa desarrollado se adapta fácilmente a cada tipo de empresa, proporcionando un versatilidad y flexibilidad incomparable.
Las macros en Excel son fáciles y rápidas de usar.Rápido y fácil manejo de los programas desarrollados bajo entorno Excel, cuando la empresa adquiere un software nuevo ha de dedicar cierta parte de tiempo en adquirir los conocimientos necesarios para el buen manejo del software, la gran ventaja que nos aporta las macros es que están desarrolladas bajo Excel, herramienta conocida por una gran publico y extendida en la mayoría de las empresas.
Las macros en Excel resuelven cálcculos complejos y automatizan tareas.Realización de tareas y cálculos complejos, en muchas ocasiones dejamos de utilizar técnicas conocidas para la resolución de problemas, que nos podrían aportar datos de vital importancia ,por la gran complejidad de calculo que conllevan , mediante macros en Excel estas tareas y cálculos pasaran a la historia, realizando la propia hoja Excel el trabajo por nosotros.
Con las macros en Excel aumentará su eficacia y eficencia.Aumento de eficacia y eficiencia en el trabajo , puesto que reducimos horas y horas de nuestro trabajo en realizar tareas manuales al convertirlas en automáticas, ocupando el tiempo ganado en otros asuntos.
Visual Basic
Visual Basic es un lenguaje de programación orientado a eventos, desarrollado por el alemán Alan Cooper para Microsoft. Este lenguaje de programación es un dialecto de BASIC, con importantes agregados. Su primera versión fue presentada en 1991, con la intención de simplificar la programación utilizando un ambiente de desarrollo completamente gráfico que facilitara la creación de interfaces gráficas y, en cierta medida, también la programación misma.
La última versión que fue la 6, liberada en 1998. Microsoft extendió el suporte de este lenguaje hasta marzo de 2008.
En 2001 Microsoft propuso abandonar el desarrollo basado en la API Win32 y pasar a un framework o marco común de librerías, independiente de la versión del sistema operativo, .NET Framework, a través de Visual Basic .NET (y otros lenguajes como C Sharp (C#) de fácil transición de código entre ellos); fue el sucesor de Visual Basic 6.
Si bien Visual Basic es de propósito general, también permite el desarrollo de aplicaciones de bases de datos usando Data Access Objects, Remote Data Objects, o ActiveX Data Objects.
Visual Basic (Visual Studio) contiene un entorno de desarrollo integrado o IDE que incluye un editor de textos para edición del código, un depurador, un compilador (y enlazador) y un constructor de interfaz gráfica o GUI.
Las versiones de Visual Basic para Windows son muy conocidas, pero existe una versión de Microsoft Visual Basic 1.0 para MS-DOS (ediciones Profesional y Estándar) menos difundida y que data de 1992. Era un entorno que, aunque en modo texto, incluía un diseñador de formularios en el que se podían arrastrar y soltar distintos controles.
La última versión sólo para 16 bits, la 3.0, no incluía una detallada biblioteca de componentes para toda clase de usos. Durante la transición de Windows 3.11 a Windows 95, apareció la versión 4.0, que podía generar programas de 16 y 32 bits a partir de un mismo código fuente, a costa de un gran aumento en el tamaño de los archivos "runtime" necesarios. Además, se sustituyen los controles VBX por los nuevos OCX. Con la versión 5.0, estuvo a punto de implementar por primera vez la posibilidad de compilar a código nativo, obteniendo una mejora de rendimiento considerable. Tanto esta como la posterior 6.0 soportaban características propias de los lenguajes orientados a objetos, aunque careciendo de algunos ítems importantes como la herencia y la sobrecarga. La versión 6.0 continua utilizándose masivamente y es compatible prácticamente al 100% con las últimas versiones de Windows como Vista y Windows 7.
Las versiones actuales de Visual Basic se basan en la plataforma .NET, que se desligan de las anteriores versiones.
Cabe mencionar que aunque menos conocido, existió también una versión gratuita de Visual Basic 5.0 dedicada en su práctica al desarrollo de controles y componentes, su nombre en concreto era Microsoft Visual Basic 5.0 Control Creation Edition (Visual Basic 5 CCE). También hubo versiones orientadas al desarrollo de aplicaciones para dispositivos móviles basados en Windows CE y Pocket PC, conocido como Embedded (Visual Basic).
Versiones:
* Visual Basic 1.0 para Windows se liberó en Mayo de 1991.
* Visual Basic 1.0 para DOS fue liberado en Septiembre de 1992. El lenguaje en sí no era compatible con Visual Basic para Windows, ya que era en realidad la siguiente versión de compiladores BASIC para DOS, QuickBASIC y BASIC PDF (Profesional Development System). Usaba una interfase de texto, con caracteres ASCII extendidos para simular la apariencia de una interfase gráfica.
* Visual Basic 2.0 liberado en Noviembre de 1992. Vino en las versiones Standard y Professional. El entorno de programación era más fácil de usar, y su velocidad se mejoró. En particular, los formularios se convirtieron en objetos instanciables, sentando así los conceptos fundamentales para módulos de clase, que luego se ofrecerían en la versión 4.
* Visual Basic 3.0 se liberó en verano de 1993, en versiones Standard y Profesional, incluyendo la versión 1.1 de Microsoft Jet Database Engine que permitía acceso a bases de datos (Access).
* Visual Basic 4.0, de Agosto de 1995 fue la primera versión que generaba aplicaciones de 16 y 32 bits para Windows. Había incompatibilidades entre las distintas realeases de VB4 que causaban fallas de instalación y problemas de operación. Mientras las anteriores versiones utilizaban controles VBX, con esta se comenzó a usar controles OLE en archivos OCX, que más tarde se llamarían controles ActiveX.
* Con la versión 5.0, de Febrero de 1997, Microsoft lanzó Visual Basic exclusivamente para generar programas de 32 bits. Los programadores que preferían generar aplicaciones de 16 bits debían utilizar VB 4.0, siendo transportables a VB 5.0 y viceversa. En la versión 5 se tenía la posibilidad de creaer controles personalizados, también se podía compilar a código ejecutable nativo de Windows, acelerando con ello la ejecución de los programas de cálculo.

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 por medio del comando de menú. Dependiendo de cómo esté asignada la ejecución de la macro, es posible 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 foco a un menú, comando o control.) con CTRL o haciendo clic en un botón de la barra de herramientas o en el área de un objeto, gráfico o control. Asimismo, puede ejecutar una macro automáticamente al abrir un libro.
Nota Cuando se establece el nivel de seguridad de macros de Microsoft Office Excel en Deshabilitar todas las macros sin notificación, Excel solo ejecutará las macros firmadas digitalmente o almacenadas en una ubicación de confianza, como 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.
Para obtener más información acerca de cómo cambiar la configuración de seguridad de macros, vea el tema sobre cómo cambiar la configuración de seguridad de macros en Excel.
¿Qué desea hacer?
* Ejecutar una macro
* Ejecutar una macro presionando una combinación de teclas de método abreviado con CTRL
* Ejecutar una macro haciendo clic en un botón de la barra de herramientas de acceso rápido
* Ejecutar una macro haciendo clic en un área de un objeto gráfico
* Ejecutar automáticamente una macro al abrir un libro
Ejecutar una macro
1. Si la ficha Programador no está disponible, haga lo siguiente para mostrarla:
1. Haga clic en el botón de Microsoft Office Imagen del botón y, a continuación, haga clic en Opciones de Excel.
2. 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.
Nota La cinta de opciones es un componente de la Interfaz de usuario de Microsoft Office Fluent.
2. Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas las macros, haga lo siguiente:
1. En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.
Imagen de cinta de opciones de Excel
2. 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. Para obtener más información acerca de cómo cambiar la configuración, vea el tema sobre cómo cambiar la configuración de seguridad de macros en Excel.
1. Abra el libro que contiene la macro.
2. En la ficha Programador, en el grupo Código, haga clic en Macros.
3. En el cuadro Nombre de la macro, haga clic en la macro que desea ejecutar.
4. 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 Imagen del botón o presione F5.
Volver al principio Volver al principio
Ejecutar una macro presionando una combinación de teclas de método abreviado con CTRL
1. Si la ficha Programador no está disponible, siga este procedimiento para mostrarla:
1. Haga clic en el botón de Microsoft Office Imagen del botón y, a continuación, haga clic en Opciones de Excel.
2. 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.
Nota La cinta de opciones es un componente de la Interfaz de usuario de Microsoft Office Fluent.
2. En la ficha Programador, en el grupo Código, haga clic en Macros.
Imagen de cinta de opciones de Excel
3. En el cuadro Nombre de la macro, haga clic en la macro a la que desea asignar una combinación de teclas con CTRL.
4. Haga clic en Opciones.
5. 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.
6. Escriba una descripción de la macro en el cuadro Descripción.
7. 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 de Microsoft Office Imagen del botón y, a continuación, haga clic en Opciones de Excel.
2. Haga clic en Personalizar y, a continuación, en la lista Comandos disponibles en, seleccione Macros.
3. En la lista, haga clic en la macro que creó y, a continuación, en Agregar.
4. Para cambiar la imagen del botón de la macro, seleccione la macro en el cuadro donde la agregó y haga clic en Modificar.
5. En Símbolo, haga clic en la imagen de botón que desea.
6. Para cambiar el nombre de la macro que aparece al posicionar el cursor sobre el botón, escriba el nombre que desea en el cuadro Nombre para mostrar.
7. Haga clic en Aceptar para agregar el botón de la macro a la barra de herramientas de acceso rápido.
Barra de herramientas de acceso rápido
8. En la barra de herramientas de acceso rápido, haga clic en el botón de la macro.
Volver al principio Volver al principio
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.
Imagen de cinta de opciones de Excel
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 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 Imagen del botón en la ficha Programador en el grupo Código.
Sugerencia También puede hacer clic en Detener grabación Imagen del botón en el lado izquierdo 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 Se mostrarán las Herramientas de dibujo con la ficha Formato.
Imagen de cinta de opciones de Excel
7. 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.
Volver al principio Volver al principio
Ejecutar automáticamente una macro al abrir un libro
Si graba una macro y la guarda con 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 Microsoft Visual Basic para Aplicaciones (VBA) en el evento Open del libro usando 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:
1. Haga clic en el botón de Microsoft Office Imagen del botón y, a continuación, haga clic en Opciones de Excel.
2. 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.
2. Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas las macros, haga lo siguiente:
1. En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.
Imagen de cinta de opciones de Excel
2. 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.
1. Si desea guardar la macro con un libro determinado, abra primero ese libro.
2. En la ficha Programador, en el grupo Código, haga clic en Grabar macro.
3. En el cuadro Nombre de la macro, escriba Auto_abrir.
4. En la lista Guardar macro en, seleccione el libro donde desea almacenar la macro.
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 aún no existe, y guarda la macro en este libro. En Windows Vista, este libro se guarda en la carpeta C:\Usuarios\nombre de usuario\AppData\Local\Microsoft\Excel\XLStart. En Microsoft Windows XP, este libro se guarda en la carpeta C:\Documents and Settings\nombre de usuario\Datos de programa\Microsoft\Excel\XLStart. Los libros almacenados en la carpeta XLStart se abren automáticamente al iniciar Excel. 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.
5. Haga clic en Aceptar y realice las acciones que desea grabar.
6. En la ficha Programador, en el grupo Código, haga clic en Detener grabación Imagen del botón.
Sugerencia También puede hacer clic en Detener grabación Imagen del botó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 Si el libro en donde se guarda 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.
* Si desea iniciar Excel sin ejecutar una macro Auto_abrir, mantenga presionada la tecla MAYÚS al abrir el programa.
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:
1. Haga clic en el botón de Microsoft Office Imagen del botón y, a continuación, haga clic en Opciones de Excel.
2. 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.
2. Para establecer el nivel de seguridad de manera que estén habilitadas temporalmente todas las macros, haga lo siguiente:
1. En la ficha Programador, en el grupo Código, haga clic en Seguridad de macros.
Imagen de cinta de opciones de Excel
2. 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.
1. Guarde y cierre todos los libros abiertos.
2. Abra el libro donde desea agregar la macro o cree un nuevo libro.
3. En la ficha Programador, en el grupo Código, haga clic en Visual Basic.
4. En la ventana Explorador de proyectos, haga clic con el botón secundario en el objeto ThisWorkbook y, a continuación, haga clic en Ver código.
Sugerencia Si la ventana Explorador de proyectos no está visible, en el menú Ver, haga clic en Explorador del proyecto.
5. 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:
WEBGRAFIA:
http://office.microsoft.com/es-mx/excel-help/ejecutar-una-macro-HP010014113.aspx
http://msdn.microsoft.com/es-es/library/a0003t62%28v=vs.80%29.aspx
http://es.wikipedia.org/wiki/Visual_Basic