Tecnología

Inicio

Cómo ejecutar una aplicación de Windows con Excel VBA

Cómo ejecutar una aplicación de Windows con Excel VBA


En algunas situaciones, es posible que desee abrir una segunda aplicación de Windows, mientras que todavía en funcionamiento en otra aplicación como Excel. VBA, abreviatura de Visual Basic para aplicaciones, proporciona un método que utiliza unas pocas líneas de código para llamar a otra aplicación, como Microsoft Word mientras se trabaja con Excel. Aunque se puede hacer lo mismo por el simple uso del comando "Inicio" para abrir la segunda aplicación, usando VBA hace que la segunda ejecución del programa de forma asíncrona. Es decir, el control vuelve al instante a Excel, que continúa realizando cálculos sin necesidad de cambiar a la otra aplicación manualmente.

Instrucciones

1 Abra un nuevo libro en Microsoft Excel. Haga clic en la pestaña "desarrollador" en el menú de nivel superior. Si no ve esta opción, haga clic en el botón "Office" en la esquina superior izquierda de Excel. Seleccione "Opciones de Excel" de la ventana y haga clic en la casilla junto a "Mostrar ficha Programador en la cinta." Haga clic en "Aceptar".

2 Haga clic en la pestaña "Visual Basic" ahora visible en la fila de Opciones de desarrollador. Esto abre un Visual Basic para Aplicaciones (VBA) ventana de desarrollo.

3 Haga clic en "Ver" en la lista de menú superior en la ventana de desarrollo. Haga clic en "Código" de la lista desplegable.

Escriba el siguiente código:

Private Sub CommandButton1_Click ()
Dim como secuencia NombreApl
'La siguiente línea establece un camino para que usted pueda elegir la aplicación de Windows
'AppName = InputBox ( "Introduzca la ruta y el nombre del archivo ejecutable de la aplicación")
'La siguiente línea muestra cómo tiene que introducir la ruta y el nombre del archivo ejecutable de la aplicación
'AppName = "C: \ Archivos de programa (x86) \ Microsoft Office \ Office12 \ Winword.exe"
'Si la aplicación está en el camino normal como Word, Bloc de notas, Excel IE, y otros estándares de Microsoft' son, entonces no se necesita la ruta completa. Entre sólo el programa ejecutable real como se ve.
AppName = "winword.exe"
Shell AppName, vbNormalFocus
End Sub

Nota: Las líneas que comienzan con apóstrofes no ejecutan.

4 Volver a la pantalla de hoja de cálculo, parcialmente oculto detrás de las ventanas de codificación. Haga clic en el icono que apunta hacia abajo en la ficha "Insertar" del menú de desarrollador. Haga doble clic en el icono "botón de comando" en la sección "Controles ActiveX". Esto agrega el botón a la hoja de cálculo Excel con el nombre predeterminado de "CommandButton1." Arrastre este botón con el ratón a una ubicación fuera de la vía en la hoja de cálculo. Haga doble clic en el botón para verificar que el código introducido en el paso 3 se muestra. Si no es así, compruebe la pantalla de códigos, en particular para asegurar el nombre de la Subcomisión (subrutina) anterior coincide con el nombre en el botón de comando.

5 Guarde la hoja de cálculo como una versión habilitado para macros. Cierre el archivo de hoja de cálculo. Volver a abrirlo, y cuando se les advierte sobre la ejecución de macros, seleccione la opción "Habilitar macros".

6 Haga clic en "Inicio" en el menú de nivel superior. Haga clic en el botón que ha creado en la hoja de cálculo de Microsoft Word y se abrirá. Volver a la sección de código VBA y alterar las líneas de código para que coincida con las aplicaciones que desea ejecutar. Retire el apóstrofe en la línea que empieza " 'AppName = Caja de entrada" para que sea ejecutable. A continuación, se pide la aplicación. Eliminar las líneas que comienzan con «AppName =" winword.exe "y" AppName = "C: \ Archivos de programa" para que pueda ejecutar cualquier aplicación que desee.

Consejos y advertencias

  • Vestir a su programa al cambiar el nombre de comando para algo más significativo, tales como "Ejecutar otra aplicación." Haga clic en el botón y seleccione "Propiedades" para cambiar la copia de color, la fuente y otras apariciones.
  • Debido a la naturaleza asincrónica del comando de Shell, en función de las medidas adoptadas en virtud de la orden, el proceso no puede finalizar antes de la siguiente instrucción se ejecuta. De acuerdo con "Mastering VBA", "esto puede causar errores en sus procedimientos, si los comandos posteriores dependen de la instrucción Shell haber ejecutado".