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

  • Lesley Fowler
  • 0
  • 4030
  • 132
Anuncio

Si ha seguido algunos de los artículos de programación que he publicado aquí en MUO, entonces sabe que tengo una gran historia de amor con VBA.

No es tanto el idioma 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. Pase cualquier información entre aplicaciones de VBA usando el Portapapeles Pase cualquier información entre aplicaciones de VBA usando 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 obtener dos aplicaciones para “hablar” el uno al otro. Puede intentar transacciones muy rápidas ... usando el portapapeles, cómo enviar correos electrónicos desde Excel Cómo enviar correos electrónicos desde una hoja de cálculo Excel usando scripts VBA Cómo enviar correos electrónicos desde una hoja de cálculo Excel usando scripts VBA Nuestra plantilla de código lo ayudará a configurar correos electrónicos automáticos desde Excel utilizando Collaboration Data Objects (CDO) y scripts VBA. , e incluso cómo hacer un navegador de Internet con VBA Cómo hacer su propio navegador de Internet básico usando VBA Cómo hacer su propio navegador de Internet básico usando VBA Cuando realmente deja de pensar en ello, un navegador de Internet en su forma más simple no es Realmente una aplicación tan impresionante. Quiero decir, sí, Internet es increíble para los estándares de cualquiera. El concepto de vinculación ... .

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

Haciendo su propio programa con VBA

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

No me creas ¿Dudas que tienes la capacidad de escribir un programa real? Bueno, estoy aquí para demostrarte que tú poder escribe tu propio programa cuando quieras, usando VBA. Voy a tomarlo con calma y haré todo lo posible para que sea simple. Listo?

Crear el marco de su aplicación

Primero, deberá elegir entre un producto de Office existente ya 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 usa Excel 2007 o 2010, encontrará los mismos controles debajo de “Desarrollador” elemento del menú y luego haciendo clic en “Insertar”. Lo que estás buscando es el control del botón de comando.

Haga clic en él y dibuje un botón de comando en la hoja de cálculo. En Word u otras aplicaciones de MS, deberá colocar el botón en un 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á más allá del alcance de este artículo. Por ahora, vamos con un botón de comando.

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

Esta es el área de desarrollo donde vas a crear tu nueva aplicación. Lo primero que quieres hacer es crear 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 el “Formas” carpeta con el nombre predeterminado de “UserForm1”.

Haga doble clic 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 derecho, 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 cuando haces 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. Para ello, escriba 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 hora de diseñar su aplicación real.

Primero, querrá 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 plano en un archivo de salida HTML que pueda 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 el formulario 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.

Con la caja de herramientas Controles, puede agregar campos de texto, etiquetas y botones de comando a su formulario. Si realmente quiere ser creativo, también encontrará marcos, cuadros de selección y 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 se muestra, puede encontrarla debajo de los iconos de la barra de herramientas en el menú del editor superior; cuando pase el mouse sobre ella, verá 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 coloque cada uno en su formulario, preste mucha atención al “Propiedades” caja para ese artículo. Quieres editar el “(Nombre)” campo a algo que tiene sentido para lo que lo está utilizando, porque este nombre es cómo su programa va a hacer referencia a ese elemento. Que sea algo que sea claro y tenga sentido.

Añadiendo Funcionalidad Genial

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 de Office. En mi caso, quiero crear una salida a un archivo en mi computadora. Puede leer y escribir en archivos agregando lo que se llama un “Referencia” a su 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 archivo, 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 la 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, formateado de manera especial.

Al hacer clic en ese botón, veo el código para el evento de clic del botón. El siguiente código puede parecer complicado si nunca antes ha hecho VBA, pero realmente no está mal si lo mira una línea a la vez.

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

Dim fso como nuevo FileSystemObject Dim fnum Dim MyFile como String MyFile = "c: \ temp \ OutputArticle.txt" fnum = Freefile ()

¿Qué hace esto? Bueno, se configura “Mi archivo” como la ruta a su archivo de salida en el que desea escribir, y crea “fnum” como la identificación del archivo “llave” por el código Finalmente, conecta 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 quieras emitiendo Imprimir #fnum, texto comandos, como se muestra a continuación.

¿Ves las referencias anteriores a cosas como txtHeaderImage y txt1stSection? En realidad, deberían ser txtHeaderImage.text, pero con VBA puede usar accesos directos como ese, dejando fuera .text en el caso de cosas como campos de texto, y su 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 tuve que hacer para enviar un mensaje de texto fue volver a salir “Diseño” modo, haga clic en los botones y luego vea cómo se ve el archivo de salida.

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

Si lo piensas, 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 Excel en segundo plano. Podría escribir una aplicación que lea información de un archivo de texto, formatee la información o haga 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 pensaste que sería? ¿Eres un programador habitual de VBA en el trabajo o en casa? Comparta sus pensamientos y opiniones sobre su amor por VBA en la sección de comentarios a continuación..

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




Nadie ha comentado sobre este artículo todavía.

Sobre tecnología moderna, simple y asequible.
Tu guía en el mundo de la tecnología moderna. Aprenda a usar las tecnologías y los dispositivos que nos rodean todos los días y aprenda a descubrir cosas interesantes en Internet.