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

JavaScript Discussion :

Lancer plusieurs macro *mcr en JavaScript


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ouvrier
    Inscrit en
    Juin 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ouvrier
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2017
    Messages : 91
    Par défaut Lancer plusieurs macro *mcr en JavaScript
    Salut,

    Désolé de venir comme çà sans présentation, mais je suis à la bourre....

    Depuis 15 jours, étant débutant, cherchant à lancer des macros *mcr via simplement un lien sur une page web, çà marche mais le problème est qu'a chaque fois les navigateurs te demande d'ouvrir ou d’enregistrer, impossible de le faire automatiquement, même après plusieurs posts sur les forums officiels pas eu de réponses réglant le problème !


    Pour le coté graphique j'avais un peu peur mais en travaillant en html puis en sauvegardant avec dreamweaver en .hta çà passe nikel,

    il ne reste plus qu'a pouvoir rajouter les 199 autres macros...


    Voici le code actuel :


    Code html : 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
    18
    <html>
    <head>
    <script language="javascript">
    <!--
      function lance() {
           var wScript = new ActiveXObject("Wscript.Shell");
           wScript.run("testmacro.mcr");
           return false;
      }
     
    //-->
    </script>
    </head>
    <body>
    <hta:application border="yes" singleinstance="yes" windowstate="maximize" scroll="no" caption="no" innerborder="no"></hta:application>
    <a href="" onClick="return lance();"><img src="240_F_41730951_EyMKKNC8LF8U0SlmiiJnxU9HCnraMXDR.jpg" width="63" height="64"></a>
    </body>
    </html>
    Ensuite une personne très sympa ma proposé un autre code, mais je dois buter sur quelque chose car normalement juste en renommant le nom de mes macros par les siennes pour test çà devrait fonctionner mais mais ce n'est pas le cas !

    Qu'en pensez-vous svp ?

    Code html : 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <!DOCTYPE html>
    <html>
    <head>
    <title>Lancement des macros</title>
    <script type="text/JavaScript">
    var myArray = ['appli_001.mcr', 'appli_002.mcr',
                    ..... 
                   'appli_199.mcr', 'appli_200.mcr'];
    function lance(Numero_Macro) {
     var wScript = new ActiveXObject("Wscript.Shell");
     var myMacro = myArray(Numero_Macro);
     wScript.run(myMacro);
     return false;
    }
    </script>
    </head>
    <body>
    .....
    <a href="" onClick="return lance(1);"><img src="image_001.jpg"></a>
    <a href="" onClick="return lance(2);"><img src="image_002.jpg"></a>
    .....
    <a href="" onClick="return lance(199);"><img src="image_199.jpg"></a>
    <a href="" onClick="return lance(200);"><img src="image_200.jpg"></a>
    .....
    </body>
    </html>

    Merci

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Bonjour,
    Attention :
    on n'écrit pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var myMacro = myArray(Numero_Macro);  // avec des parenthéses
    mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var myMacro = myArray[Numero_Macro];  // avec des crochets
    pour cibler un élément d'un Array.

  3. #3
    Membre confirmé
    Homme Profil pro
    Ouvrier
    Inscrit en
    Juin 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ouvrier
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2017
    Messages : 91
    Par défaut
    Oui une autre personne a vu, mais j'ai toujours le même soucis

    et j'ai le message suivant en *hta :
    http://www.hostingpics.net/viewer.ph...437error01.jpg

  4. #4
    Membre confirmé
    Homme Profil pro
    Ouvrier
    Inscrit en
    Juin 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ouvrier
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2017
    Messages : 91
    Par défaut
    Quelqu'un pourrait me communiquer l'adresse d'un pro ?

  5. #5
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    L'erreur paraît pourtant claire, Le fichier spécifié est introuvable. Vérifie dans ce cas les chemins d'accès à tes fichiers .mcr.

    Un autre détail qui peut avoir son importance est que les indices des Array commence à 0 et non pas à 1.
    Quand tu écris lance(1); tu demandes l’exécution du fichier macro 'appli_002.mcr' d'après ton code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var myArray = ['appli_001.mcr', 'appli_002.mcr',  'appli_003.mcr', 'appli_004.mcr'];
    console.log( myArray[0]); // >> appli_001.mcr
    console.log( myArray[1]); // >> appli_002.mcr
    Quelqu'un pourrait me communiquer l'adresse d'un pro ?
    Il existe des annuaires pour cela, mais le plus simple peut être l’apprentissage des bases

  6. #6
    Membre confirmé
    Homme Profil pro
    Ouvrier
    Inscrit en
    Juin 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ouvrier
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2017
    Messages : 91
    Par défaut
    MErci Nosmoking, en fait oui, mais là je devrais tout apprendre, mais j'ai vraiment pas le temps pour le moment c'est tout le problème, mais avec çà je comprends déjà mieux !

    pour le chemin, je vois bien, le fichier html et la macro sont au même niveau, j'ai donc mis le nom simple et le chemin complet çà ne fonctionne pas, je vais essayer avec tes modifications !

    Ok, j'ai juste changé par 0 et çà marche merci beaucoup Nosmoking

    Par contre je dois rajouter ces lignes quand même ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    console.log( myArray[0]); // >> appli_001.mcr
    console.log( myArray[1]); // >> appli_002.mcr

    Sinon :

    Bon,

    Ce n'est vraiment pas logique ce qui ce passe,

    En l'état, si je lance la page, çà fonctionne bien pour l'appli_001, aucune raison pour que çà ne fonctionne pas cette fois si tout est correct !

    par contre i je déplace les fichiers dans un autre dossier et/ou DD, pourtant j'indique bien le chemin relatif mais le fait de changer de répertoire fait recommencer le problème, j'ai beau indiquer tous les chemins possibles rien n'y fait !



    C'est quand même compliqué ce javascript, car ce n'est pas du tout logique !

Discussions similaires

  1. Besoin de lancer plusieurs fois la macro pour arriver au résultat final
    Par Jeannot40260 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 08/08/2016, 15h30
  2. Lancer une macro sur plusieurs tables
    Par discus23 dans le forum Macro
    Réponses: 8
    Dernier message: 30/07/2012, 14h41
  3. Lancer plusieurs fonctions JavaScript
    Par tijocanard dans le forum jQuery
    Réponses: 2
    Dernier message: 09/03/2012, 09h49
  4. lancer plusieurs macro au démarrage d'Excel
    Par antoine2933 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/08/2011, 14h35
  5. Lancer plusieurs fonctions JavaScript sur même evenement
    Par davinout dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 23/07/2010, 17h37

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