Macros (II):: Hola Mundo !!!

En este artículo comenzaré con la parte de programación de macros en Excel, para comenzar a testear casi cualquier lenguaje es utilizado el “Hola mundo”, de hecho algunos clasifican la accesibilidad de un entorno dependiendo de cuánto tiempo pasa entre que te metes en el entorno y logras que el programa ejecute un “hola mundo”, basicamente es que el aplicativo muestre una ventana, cadro de dialogo, pagina, etc con el texto “Hola Mundo”

El propósito de este artículo es mostrarte un camino para que inicies en la programación VBA en Excel, valga aclarar que muchos de los conocimientos de VBA son Visual Basic 6 General por lo que también te servirán para Ms Access, aunque por supuesto te antes de comenzar con Access te recomiendo que leas esto.

Bueno hagamos nuestro “Hola Mundo”:

1. Entras en Excel y presionas Alt + F11 o vas al menu Herramientas/Macros/Editor Visual Basic; con esto  entrarás al editor de VBA que viene incorporado en el Office.

2. Ya tienes un entorno, ahora necesitas escribir algunas ordenes para probarlo, como mencione en el primer artículo de macros el código VBA se guarda en módulos, hasta el momento no tienes ninguno, asi que ve al menú insertar y seleccionas la opción “Módulo”, como puedes ver en explorador de proyectos de la izquierda se ha insertado un modulo nuevo, si no puedes ver el explorador de proyectos ve al menú Ver/Explorador de proyectos o simplemente presiona Ctlr + R.

3. Ahora que ya tienes un modulo abierto que es como una hoja en blanco, escribamos el código:

Macro1

Que acabamos de escribir ?, Bueno toda macro está comprendida entre un Sub y un End Sub, estas dos instrucciones le indican al programa donde comienza y donde termina la macro, despúes del sub escribimos el nombre que tendrá la macro, en nuestro caso “PrimeraMacro”, los paréntesis “()” están reservados para los argumentos de la macro, pero será tema de otro artículo.

La sentencia Msgbox “Hola Mundo”, da la instrucción de mostrar un cuadro de mensaje (MsgBox) con el texto “Hola Mundo”, para ejecutar la macro puedes presionar F5 o te dirijes al menú Ejecutar/”Ejecutar Sub/UserForm”.

Cuadro de Texto

Otra forma de hacer un “Hola Mundo”:

Muy bien ya escribimos nuestro primer hola mundo, pero te queda la sensación de que no interactuaste con Excel, despues de todo si estas leyendo esto es por que eso es lo que te intereza, asi hagamos un “Hola Mundo” directamente en Excel, escribe este código:

SegundaMacro

Si ejecutas esta macro puedes ver que lo que hicimos fue poner la frase “Hola Mundo” en la celda “a1” de la hoja que tengas abierta, básicamente lo que escribimos es: al objeto “Range(“a1″)”, es decir, la celda a1, asignále el valor “Hola Mundo”, ahora sí estamos interactuando directamente con los objetos de Excel en este caso las celdas (Objeto Range).

Si el ejemplo hola mundo te genero curiosidad y quieres documentarte mejor te recomiendo este  Documento, es una guía escrita por cybercursos.net y con seguridad que si buscas documentación en la red este es uno de los manuales que mas te encontrarás.

Una consideración sobre este manual: La metodoloógia del manual es muy buena sobretodo si no tienes idea de la programación orientada a objetos, pero muchos de lo ejemplos que encontrarás en este manual tienen la características de estar escritos de acuerdo a como se comporta el usuario frente a Excel, primero se selecciona un rango y se opera sobre el ó se selecciona una hoja y despues un rango para realizar operaciones, si hicieramos el ejemplo anterior de esta forma resultaría algo así:

Sub PrimeraMacro ()

Sheets(“Hoja1”).Select

Range(“a1”).select

selection.value=”Hola Mundo”

End Sub

Como vez se logra lo mismo, pero de una forma más explicita, el problema con escribir las macros es que no solo son más largas y complejas sino que durante su ejecución se harán procesos que consumen ciclos del procesador y que no son necesarios, asi que cuado vayas a cambiar el valor de la propiedad de un objeto o a ejecutar un determinado método hazlo directamente sobre el objeto no hay necesidad de que este seleccionado o activo.

One thought on “Macros (II):: Hola Mundo !!!

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s