IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

lancement application via WScript.CreateObject uniquement si boite de dialogue


Sujet :

VBScript

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2008
    Messages : 2
    Par défaut lancement application via WScript.CreateObject uniquement si boite de dialogue
    Bonjour,

    Voici le soucis : si je fais le script suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set WshShell = WScript.CreateObject("WScript.Shell")
     
    WshShell.Run "C:\temp\emploi_du_temps.xls"
    Il ne se passe rien, le script se termine normalement, mais excel ne se lance pas.

    Si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Set WshShell = WScript.CreateObject("WScript.Shell")
     
    WshShell.Run "C:\temp\emploi_du_temps.xls"
     
    Msgbox "test"
    Excel s'ouvre (ce que je désire), mais du coup j'ai une boite de dialogue "test" en trop par rapport à ce que je voudrait.

    Quelqun aurait il une explication/solution ?

    Merci d'avance de vos réponse

    Note : Excel ne se lance que si j'ai une msgbox, et ne se lance pas si je rajoute d'autres opérations, calculs, etc... à ,la place.

  2. #2
    Membre Expert
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Par défaut
    Bonjour,

    Et si tu lances Excel avec en paramètre ton fichier à ouvrir ?

    Un truc comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    WshShell.Run "C:\EXCEL.EXE C:\temp\emploi_du_temps.xls"

  3. #3
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Rigolos que la Msgbox te permette de lancer excel.
    Ta manière d'opérer n'est pas correcte, utilises celle proposée par pc75.

    Un fichier xls n'est pas un executable, donc il ne peut pas être exécuté.
    Par contre on peut l'ouvrir avec le bon logiciel.
    C'est ce que fait windows lorsque tu doubles cliques sur un xls : Il lance le logiciel associé à l'extension en lui passant en paramètre le fichier excel.
    Et ce que tu dois faire

  4. #4
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 302
    Par défaut
    bonjour,
    excel est un serveur com automation...
    pourquoi ne pas utiliser plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set oExcel=GetObject("C:\temp\emploi_du_temps.xls") ou
    Set oExcel=GetObject("C:\temp\emploi_du_temps.xls","Excel.Application") ou
    Set oExcel=GetObject("C:\temp\emploi_du_temps.xls","Excel.Application","evtExcel_")
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  5. #5
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2008
    Messages : 2
    Par défaut ceci n'explique pas tout.
    Merci de vos réponses, je connaissais l'interface COM de excel, et le fait de placer "c:\....\excel.exe docu.xls" : le vrai problème (ce post est la version ultra-simplifiée du problème, avec un exemple reproductible par chacun), c'est de savoir pourquoi ça marche avec la msgbox, et pourquoi ca ne marche pas sans.

    Merci encore de votre enthousiasme à me prêter main forte

    Cependant, cela ne répond pas (à mon grand désespoir...) à la question de départ...

Discussions similaires

  1. [XL-2010] Impossible d'exécuter WScript.CreateObject("Excel.Application")
    Par ckermorgant dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 28/04/2011, 21h43
  2. Lancement d'une application via vba
    Par sefir dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 30/10/2007, 12h00
  3. Réponses: 1
    Dernier message: 30/05/2005, 17h02
  4. [Citrix MetaFrame]accés a une application via web.
    Par Antalbion dans le forum Développement
    Réponses: 8
    Dernier message: 03/09/2004, 16h06
  5. [Plugin][Lomboz]Erreur lancement tomcat via eclipse
    Par dodine dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 01/07/2004, 11h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo