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

Macros et VBA Excel Discussion :

Erreur automation script vbs [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 55
    Par défaut Erreur automation script vbs
    Bonjour,

    J'ai un problème lié au lancement d'une macro Excel 2013 via un script VBS.
    Je ne pense pas que le problème vienne de la macro en elle même ni même du script vbs mais plutot d'un lien entre l'OS (windows 8) et Excel 2013. Je vous explique pourquoi.

    Pour mon boulot, j'ai développé plusieurs macros dans des fichiers Excel (Excel 2013 et mon PC est sous 7). Ces macros sont lancées automatiquement à heure fixe via le planificateur des taches qui lance des scripts VBS qui eux même appellent les fameux fichiers Excel avec leurs macros. Tout fonctionnait très bien quand c'était lancé sur mon PC. Je n'avais jamais d'erreur (sauf info manquante sur le réseau ou sur la base mysql). Mes macros vont ouvrir des fichiers Excel, prendre des info dedans, les refermer, ouvrir d'autres fichiers Excel, copier des info dedans, faire des requetes dans une base mysql, printer les résultats dans l'Excel principale etc. Bref, c'est varié.

    Depuis 2 semaines, nous avons décidé que ce serait le serveur (que nous venons de changer) qui allait lancer ces macro. Le serveur est sous Windows 8, Excel est toujours sous 2013. Dans les macros que j'ai développées, j'ai mis une détection d'erreur qui m'envoi un mail avec la description de l'erreur et le numéro de l'erreur s'il y a une erreur. De facon aléatoire, les scripts vbs lancés automatiquement me renvoi ce genre d'erreur:

    Erreur Automation 2147417848
    L’objet invoqué s’est déconnecté de ses clients.

    A noter que si je lance les macro à la main en me connectant sur le serveur (j'ouvre l'excel et je lance les macro), je n'ai pas cette erreur et elles tournent très bien.

    A noter aussi qu'il n'y a que sur un fichier Excel en particulier que ça foire. Sur tous les autres cela fonctionne très bien. Évidement, c'est sur le plus gros fichier qui fait le plus de choses!

    Si vous avez deja rencontré ce probleme ou si vous avez des idées, je suis preneur, j'ai cherché sur internet mais n'ai pas trouvé la solution a mon probleme car a chaque fois les erreurs apparaissent quand les gens lancent leurs macro a la main. Moi je ne reproduis que lorsque c'est lancé par script VBS mais jamais quand je les lance a la main.

    Merci beaucoup!!

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Bonjour,

    je l'ai vu aussi en "pilotage", cette erreur survient par exemple lorsqu'une variable objet pointe sur rien …

    Exemple idiot mais explicite : une variable objet est défini sur un classeur ouvert, ce dernier est fermé
    puis de nouveau la variable objet est utilisée dans le code -> erreur !

    Donc effectuer une gestion d'erreur pour tracer la ligne incohérente …

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 55
    Par défaut
    ok merci pour l'aide je vais essayer de regarder ca.

    Petite question, on peut avoir dans les messages d'erreur la ligne ou l'erreur est apparu?

    Merci,

  4. #4
    Invité
    Invité(e)
    Par défaut
    bonjour,
    si j'ai bien compris, tu ouvre un fichier excel; tu exécute une macro vba; te referme le fichier excel; le tout via un scripte vbs lancé par le gestionnaire de tache planifiées?

    ton planificateur de tache exécute ton vbs avec session ouverte ou fermé.

    ton fichier excel utilise le mappage Windows pour ouvrir et/ou sauvegarder des fichiers (exemple z:\)?

    car je te le rappel ou t'informe que le mappage est inexistant sur des tache planifier hors session!

    dans ce cas il faut utiliser l'adresse ip dans vbscript et dans tes macro excel!

    ceci est valable également pour ta connexion à MySql.

    si tu exécute ton vbs sur le serveur en double cliquant sur le fichier vbs comme un fichier bat ça fonctionne?
    Dernière modification par Invité ; 06/10/2014 à 13h38.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 55
    Par défaut
    Bonjour rdurupt,

    Oui tu as bien compris.

    ton planificateur de tache exécute ton vbs avec session ouverte ou fermé.
    ==> session ouverte mais locké. Cela fonctionnait aussi sur mon PC (session locké par moi meme le soir en partant).

    ton fichier excel utilise le mappage Windows pour ouvrir et/ou sauvegarder des fichiers (exemple z:\)?
    ==> oui. Mais comme dit juste au dessus, cela fonctionnait bien sur mon PC.

    ceci est valable également pour ta connexion à MySql.
    ==> la j'utilise l'IP.

    si tu exécute ton vbs sur le serveur en double cliquant sur le fichier vbs comme un fichier bat ça fonctionne?
    ==> Si je le lance en double cliquant dessus, j'ai aussi les erreurs mais pas a chaque fois. Ca a l'air aléatoire...!

    Merci!

    Ce que je ne comprends pas c'est que ça marche très bien si c'est lancé à la main et non pas par vbs...!
    Cela peut etre du a une différence de prise en charge des vbs par windows 8 par rapport a windows 7?

  6. #6
    Invité
    Invité(e)
    Par défaut
    Code Cscript.Bat : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\WINDOWS\SysWOW64\Cscript.exe %1
    Code planificateur de tache : Sélectionner tout - Visualiser dans une fenêtre à part
    c:\monRep\Cscript.Bat MonRep\MonScript.vbs

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur de syntaxe dans un script VBS
    Par metatron dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 11/03/2009, 12h18
  2. Erreur d'exécution - script VBS
    Par lord_kaiser dans le forum VBScript
    Réponses: 16
    Dernier message: 10/03/2008, 16h53
  3. Erreur script VBS avec les "dossiers virtuels" Vista
    Par Aquafresh dans le forum Windows Vista
    Réponses: 2
    Dernier message: 04/10/2007, 18h08
  4. Gestion erreur SQL Serveur dans un Script VBS
    Par jayan dans le forum VBScript
    Réponses: 3
    Dernier message: 08/02/2007, 14h06
  5. erreur script vbs
    Par france38 dans le forum VBScript
    Réponses: 4
    Dernier message: 14/10/2006, 10h50

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