Vb en excel 2007

Hola... Lo que pasa es lo siguiente... Tengo dentro de un archivo de excel una sola hoja la cual contiene un formulario, en este formulario hay un Useform1, en este Useform1 hay un CommandButton1_Click(), yo quiero que al presionar este botton me ejecute un programa que siempre al ejecutarlo esta en "C:Archivos de programa\Seecol\Siprec\sipret.exe".
¿Hay algún código para esto...? ¿Si se puede?

1 Respuesta

Respuesta
1
En el command button utiliza el siguiente comando
shell("C:Archivos de programa\Seecol\Siprec\sipret.exe")
He aquí algunas aclaraciones respecto a este comando.
Shell (Función)
Ejecuta un programa ejecutable y devuelve un tipo Variant (Double) que representa la identificación de la tarea del programa si se ha ejecutado con éxito, en caso contrario devuelve cero.
Sintaxis
Shell(pathname[, windowstyle])
La sintaxis de la función Shell tiene estos argumentos con nombre:
Pathname Requerido; Variant (String). Nombre del programa a ejecutar y de cualesquiera argumentos necesarios o modificador de la línea de comandos; puede incluir directorio o carpeta y unidad de disco. El siguiente ejemplo utiliza la firma de Microsoft Word:
Shell MacID("MSWD")
Windowstyle Opcional. Variant (Integer) correspondiente al estilo de la ventana en la cual se va a ejecutar el programa. Si se omite windowstyle, el programa se inicia minimizado con enfoque.
El argumento con nombre windowstyle tiene estos valores:
VbHide - 0 - Se oculta Windows y se pasa el foco a la ventana oculta. La constante
vbHide no se aplica a plataformas Macintosh.
VbNormalFocus - 1 - Windows recupera el foco y vuelve a su posición y tamaño original.
VbMinimizedFocus - 2 - Windows se muestra como un icono con foco. VbMaximizedFocus - 3 - Windows se maximiza con foco.
VbNormalNoFocus - 4 - Windows vuelve al tamaño y posición más recientes. La ventana activa actual permanece activa.
VbMinimizedNoFocus - 6- Windows se muestra como un icono. La ventana activa actual permanece activa.
¿Pero me aparece todavía error _53 modifico la ruta y me aparece después erro_5 que se hace hay?
Verifica bien si el ejecutable está realmente en esa ruta.
Haz de cuenta que lo que hace la función es lo mismo que si hicieras algo en la herramienta ejecutar de Windows, entonces lo que puedes hacer para probar antes de culpar a Excel es verificar que efectivamente puedes ejecutar dicho programa en Windows. Por lo que puedes hacer lo siguiente:
- Clic en Inicio-> Ejecutar o con la combinación de teclas ventanawindows+ R
- En la ventana Ejecutar que aparece introduce la ruta de tu ejecutable
<span style="white-space: pre;"> </span>C:Archivos de programa\Seecol\Siprec\sipret.exe
Si no puedes ejecutar desde aquí quiere decir que el problema es la ruta si lo puedes ejecutar puedes hacer otra prueba pero ahora desde VBA
Private Sub CommandButton1_Click()
  Shell ("C:Archivos de programa\Seecol\Siprec\sipret.exe")
End Sub
Si tampoco funciona hay que verificar si tu Office esta bien instalado puedes reemplazar tu ruta por la opción para abrir otro programa por ejemplo Word, esto lo haces así:
Private Sub CommandButton1_Click()
  Shell ("Winword")
End Sub
Si no funciona entonces el problema es con la instalación de Office en si que no permite esa clase de comandos, si es el caso me dices y vemos que se puede hacer.
Si funciona entonces efectivamente el problema esta con la ruta de ese programa.
De todas maneras mantenme al tanto y buscamos soluciones.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas