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 :

Lancement macro VBA à partir d'une tache planifiée.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2011
    Messages : 163
    Par défaut Lancement macro VBA à partir d'une tache planifiée.
    Bonjour,

    J'ai développé un outil sous excel que je lance à partir d'un lanceur en cliquant sur un bouton. J'ai voulus appliquer une tache planifiée pour que l'outil se lance tous les jours. J'ai donc créé un fichier bat qui ouvre mon fichier excel et lance à l'ouverture Bouton17_Clic.

    Le problème j'ai un message d'erreur Visual basic quand je le lance par une tache planifiée avec aucune erreur spécifiée.

    Sauriez-vous d'ou peut venir le problème ?

    Cordialement

  2. #2
    Membre Expert
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2013
    Messages
    885
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 885
    Par défaut lancement macro VBA
    Bonjour,

    Quand tu clic manuellement sur le bouton, le code s'exécute sans problème ?
    Quel est le message d'erreur ? Est un message erreur VBA ou batch ?

    Et si tu montrais ton fichier bat et le code attaché à ton bouton ?

    Cordialement,

  3. #3
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Bonjour shakapouet; nibledispo

    1) Sauve le classeur joint dans le répertoire C:\temp\
    2) Crée avec Bloc-Notes un fichier VBscript contenant le code suivant
    que tu sauves dans le répertoire C:\temp\ sous le nom MonClasseur1.vbs

    3) Crée une tâche planifiée où tu entres les valeurs suivantes
    - Exécuter: Cscript "C:\temp\MonClasseur1.vbs"
    - Démarrer dans: "C:\temp"
    4) Pour tester si le fichier vbs fonctionne, tu peux ouvrir une Invite de Commande où tu tapes C:\temp\MonClasseur1.vbs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Dim Xl 'Application
    Dim wk 'WorkBook
    set Xl = createobject("Excel.application") 'Ouvre une nouvelle application (obligatoire)
    Xl.Visible = True
    Xl.enableevents = false          'Si False, Userform1.Show ne fonctionnera pas
     
    set Wk = Xl.workbooks.open("C:\temp\MonClasseur1.xls") 
    'Si le classeur se trouve dans le répertoire C:\temp\
    'Créez une tâche planifiée et Entrez les valeurs suivantes
    'Exécuter: Entrez Cscript "C:\temp\MonClasseur1.vbs"
    'Démarrer dans: Entrez "C:\temp"
     
    Xl.run "Test_vbscript"            'Appeller la macro Test_vbscript
    Xl.enableevents = True
    wk.save           'Si un classeur du même nom était déjà ouvert, wk.save ne fonctionnera pas
    wk.close          'Fermer le classeur après exécution de la macro
    Xl.quit           'Fermer l'application
    Cordialement

    Docmarti
    Fichiers attachés Fichiers attachés

  4. #4
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2011
    Messages : 163
    Par défaut
    Bonjour,

    Voici le code que j'utilise dans le batch

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    start /WAIT EXCEL.EXE "T:\Itmaf\xxxxxxxxx\Lanceur_V6_avec_vide.xlsm"
    Exit
    et le code VBA qui lance ma macro :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_Open()
        Call Bouton17_Clic
    End Sub
    C'est un message d'erreur VBA mais qui est vide j'ai juste l'affichage d'une croix rouge au lancement. Par contre si je lance le fichier excel manuellement il exécute bien automatiquement la macro sans problème.

    Merci Docmarti je vais tester ta solution.

    Cordialement

  5. #5
    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, bonjour,

    le batch ne peut fonctionner car le chemin complet de l'application Excel n'y est même pas indiqué ‼


  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2011
    Messages : 163
    Par défaut
    Le chemin fonctionne, j'ai juste remplacer le chemin par des xxxx car c'est un réseau entreprise.

    Cordialement

  7. #7
    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

    Bon alors cela marche !

    Sinon, relis bien mon message car ta réponse n'a aucun rapport …

Discussions similaires

  1. [XL-2010] Problème envoi de mail avec Lotus lors du lancement d'une Macro via une tache planifiée
    Par Banjalex59 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/03/2015, 20h19
  2. [Toutes versions] Passer la main à une macro VBA à partir d'une macro Excel4
    Par AgentF13 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 25/04/2014, 23h19
  3. Lancer une macro VBA à partir d'un complément
    Par knarf44 dans le forum Visual Studio
    Réponses: 0
    Dernier message: 09/08/2011, 12h48
  4. [VBA-E]demarrer une macro a partir d'une certaine date
    Par lio62 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/01/2007, 21h35
  5. Lancer un module VBA par une tache planifié
    Par gengen dans le forum Access
    Réponses: 9
    Dernier message: 25/04/2006, 16h22

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