Cómo puedes hacer tu propia aplicación simple con VBA

Cómo puedes hacer tu propia aplicación simple con VBA / Windows

Si has seguido algunos de los artículos de programación que he publicado aquí en MUO, entonces sabes que tengo un gran romance con VBA..

No es tanto el lenguaje que me gusta, aunque es realmente intuitivo, es la accesibilidad. Si ya eres usuario de Microsoft Office, entonces no necesitas nada especial, pero las cosas que puedes lograr son bastante especiales..

Algunas de las bases que ya hemos cubierto incluyen cómo usar VBA para pasar información. Pasar cualquier información entre aplicaciones de VBA. Usar el portapapeles. Pasar cualquier información entre aplicaciones de VBA. Usar el portapapeles. Una de las partes más frustrantes de trabajar con VBA dentro de aplicaciones específicas es que no siempre es fácil conseguir dos aplicaciones “hablar” el uno al otro Puede intentar realizar transacciones muy rápidas ... Lea más utilizando el portapapeles, cómo enviar correos electrónicos desde Excel Cómo enviar correos electrónicos desde una hoja de cálculo de Excel mediante scripts de VBA Cómo enviar correos electrónicos desde una hoja de cálculo de Excel mediante scripts de VBA Nuestra plantilla de código le ayudará a configurar correos electrónicos automatizados desde Excel utilizando Collaboration Data Objects (CDO) y scripts de VBA. Lea más e incluso cómo hacer un navegador de Internet con VBA Cómo hacer su propio navegador de Internet básico con VBA Cómo hacer su propio navegador de Internet básico con VBA Cuando realmente se detiene a pensar en ello, un navegador de Internet en su forma más simple no es Realmente no es tan impresionante una aplicación. Quiero decir, sí, Internet es increíble para todos los estándares. El concepto de vincular… Leer más .

Si bien muchos lectores consideraron que esos artículos eran útiles, en algunos casos escuché a algunos lectores que eran completamente nuevos en programación (nunca habían visto una línea de código antes) y se quejaron de que las instrucciones aún eran demasiado complicadas de seguir..

Haciendo su propio programa con VBA

Entonces, para aquellos de ustedes a los que les encantaría poder escribir su propia aplicación VBA, pero nunca antes han escrito una sola línea de código, lo guiaré para hacer su primer programa de computadora. Este programa no es para expertos en programación o incluso para programadores moderadamente expertos, es para el novato.

No me crees ¿Tiene dudas de que tiene la capacidad de escribir un programa real? Bueno, estoy aquí para demostrarte que puede escribe tu propio programa cuando quieras, usando VBA. Voy a tomarme las cosas con calma y haré todo lo posible para que sea sencillo. Listo?

Creando el marco de su aplicación

Primero, deberá elegir entre un producto de Office existente que ya esté instalado en su PC: puede ser Word, Excel, Powerpoint, Access o cualquier otro. En este ejemplo, voy a usar Excel para crear mi aplicación. El primer paso es obtener acceso a las herramientas de VBA yendo a la barra de herramientas y haciendo clic en “Ver”, entonces “Barras de herramientas” y entonces “Caja de herramientas de control”.

Estaba en una computadora con una versión un poco más antigua de Excel, por lo que si está utilizando Excel 2007 o 2010, encontrará los mismos controles debajo de “Desarrollador” elemento de menú y luego haciendo clic en “Insertar”. Lo que estás buscando es el control del botón de comando.

Haz clic en él y dibuja un botón de comando en la hoja de cálculo. En Word u otras aplicaciones de MS, tendrás que colocar el botón en algún lugar conveniente. El único punto del botón es iniciar su aplicación. Otro enfoque sería escribir una macro que inicie automáticamente su script cuando abra el archivo de Excel, pero eso está fuera del alcance de este artículo. Por ahora, vamos con un botón de comando..

Asegúrate de que la pequeña “Modo de diseño” la selección es “en” - en la imagen de arriba está el ícono triángulo / regla / lápiz. Luego, haga doble clic en el botón de comando que creó, y se abrirá el Editor de proyectos VBA.

Esta es el área de desarrollo donde crearás tu nueva aplicación. Lo primero que quieres hacer es hacer la pantalla frontal de tu aplicación. Para hacer esto, haga clic derecho en el proyecto que ya está abierto, en mi caso se llama “VBAProject” cual es el predeterminado Luego, seleccione “Insertar” y “Formulario de usuario”.

Su formulario de usuario ahora está cargado en su proyecto bajo la “Formas” carpeta con el nombre predeterminado de “UserForm1”.

Doble click en “Hoja1”. Este es el “código” detrás de la hoja de cálculo donde creó el botón de comando. En el panel de la derecha, debería ver el “CommandButton1” seleccionado y “CommandButton1_Click” código ya allí.

Esto se llama un “función”, y es lo que se ejecuta al hacer clic en el botón de comando en la ventana de la hoja de cálculo.

Entonces, ¿qué quieres que haga tu botón de comando cuando haces clic en él? Desea que cargue el formulario de usuario que acaba de crear. Usted hace esto escribiendo en una sola línea, “Cargar UserForm1”.

Ahora que tiene su programa configurado para iniciarse en el momento en que hace clic en el botón de comando que creó, es el momento de diseñar su aplicación real.

Primero, querrás diseñar cómo se verá el programa. En mi caso, quiero escribir un programa con campos de texto y botones. El programa tomará un montón de texto, y cuando haga clic en un botón, convertirá todo ese texto sin formato en un archivo de salida HTML que puedo copiar en mi blog como un artículo perfectamente formateado..

Para diseñar el formulario, haga clic derecho en “UserForm1”, y seleccione “Ver objeto”. Verá que la forma real se muestra en el lado derecho de la pantalla. Puede hacer clic en el formulario y arrastrar las líneas de borde para cambiar su tamaño como desee..

Usando la caja de herramientas Controles, puede agregar campos de texto, etiquetas y botones de comando a su formulario. Si realmente desea ser creativo, también encontrará marcos, casillas de selección y de verificación, listas desplegables y mucho más. Estos son los componentes básicos de la mayoría de las aplicaciones básicas que existen.

Si la caja de herramientas no aparece, puedes encontrarla debajo de los iconos de la barra de herramientas en el menú del editor superior: cuando pasas el cursor sobre ella, verás la palabra “caja de instrumento” surgir. Simplemente arrastre cada componente que desee a su formulario y haga que se vea como quiera.

A medida que coloca cada uno en su formulario, preste mucha atención a la “Propiedades” caja para ese artículo. Quieres editar el “(Nombre)” seleccione algo que tenga sentido para lo que lo está usando, porque este nombre es la forma en que su programa va a hacer referencia a ese elemento. Haz que sea algo claro y tenga sentido..

Agregando Funcionalidad Cool

Lo que ya ha creado sería más que suficiente para la mayoría de las aplicaciones. Puede hacer clic en los botones y hacer que los campos de texto interactúen con la hoja de cálculo de Excel o el documento de Word donde creó la aplicación. Sin embargo, lo que estábamos haciendo hoy es tratar de hacer una aplicación que tenga algún uso fuera de la aplicación Office. En mi caso, quiero crear una salida a un archivo en mi computadora. Puedes leer y escribir archivos agregando lo que se llama un “Referencia” a tu proyecto.

Una referencia es una especie de “Añadir” eso le permite escribir comandos adicionales en su programa que de otro modo no podría sin la referencia. Por lo general, puede encontrar la lista de referencias en “Herramientas” en la barra de herramientas y seleccionando “Referencias”. Para la funcionalidad de E / S de archivos, simplemente desplácese hacia abajo y seleccione “Microsoft Scripting Runtime”.

En su programa, puede acceder a todos los componentes que creó en su formulario escribiendo cosas como textbox1.text, commandbutton1.caption, para acceder a información dentro de ese objeto (como el texto en un campo de texto), o para cambio Esa información.

En mi caso, quiero el “Crear salida” Botón para extraer todo el texto de todos los campos que creé, y luego escribirlos en un archivo de salida, con un formato especial.

Al hacer clic en ese botón, veo el código para el evento de clic de botón. El código a continuación puede parecer complicado si nunca antes has hecho VBA, pero realmente no es malo si lo miras una línea a la vez.

Para configurar la lectura y escritura de archivos una vez que haya agregado la Referencia, puede configurarlo fácilmente escribiendo las siguientes líneas:

Dim fso As New FileSystemObject Dim fnum Dim MyFile as String MyFile = "c: \ temp \ OutputArticle.txt" fnum = Freefile ()

¿Qué hace esto? Bueno, se establece “Mi archivo” como la ruta al archivo de salida en el que desea escribir, y se crea “fnum” como la identificación del archivo “llave” para el código. Finalmente, conectas estos dos juntos escribiendo “Abra MyFile para salida como fnum” - y bam, tienes tu conexión abierta para escribir en el archivo todo lo que deseas emitiendo Imprimir #fnum, texto comandos, como se muestra a continuación.

¿Ve las referencias anteriores a cosas como txtHeaderImage y txt1stSection? Esos deberían ser realmente txtHeaderImage.text, pero con VBA puedes usar accesos directos como ese: omitir .text en el caso de cosas como campos de texto, y tu programa seguirá funcionando.

Una vez que terminé de imprimir el texto contenido en todos los campos de texto en la pantalla principal de la aplicación, todo lo que tenía que hacer con el texto era volver a apagarlo. “Diseño” modo, haga clic en los botones y luego vaya a ver cómo se ve el archivo de salida.

Efectivamente, estaba mi código web, todo con el formato de las etiquetas HTML requeridas que definí en mi programa, y ​​todo el texto de esos campos de texto se colocaron donde se supone que deben ir.

Si lo piensas bien, puedes hacer cualquier cosa con una aplicación como esta. Puede crear un formulario de entrada simple para la entrada de datos, que luego envía los datos a un archivo CSV o directamente a la hoja de cálculo de Excel de fondo. Podría escribir una aplicación que lea información de un archivo de texto, formatee la información o realice cálculos y luego cargue esos datos en una hoja de cálculo.

Las posibilidades están realmente limitadas solo por su propia imaginación cuando se trata de VBA. No tiene que comprar un paquete de desarrollo costoso como Visual Studio; solo abra cualquier programa de MS Office, cambie al Editor VBA y será un programador instantáneo..

¿Intentaste crear tu propia aplicación VBA? ¿Fue tan difícil como pensabas que sería? ¿Eres un programador regular de VBA en el trabajo o en casa? Comparta sus pensamientos e ideas sobre su amor por VBA en la sección de comentarios a continuación.

Crédito de la imagen: Foto de la computadora a través de Shutterstock

Explorar más sobre: ​​Desarrollo de aplicaciones, Programación, Programación de Visual Basic.