Insérer du JavaScript dans VBA

Bonsoir,

Je cherche comment insérer du JavaScript dans mon navigateur , et que mon navigateur exécute ce Script.

Merci de votre compréhension.

24 réponses

Résumé de la discussion

La question porte sur l'insertion et l'exécution de JavaScript dans le navigateur sous Windows 7 et Google Chrome, et sur les méthodes possibles pour lancer son propre script. Plusieurs réponses suggèrent des approches différentes, notamment l'utilisation de VBA et d'objets Web pour exécuter le script, ou l'emploi d'extensions Chrome pour injecter du code. D'autres réactions évoquent des méthodes spécifiques, comme des appels execScript via IE ou des scripts qui interagissent avec des éléments de page et des événements simulés. En cas de doute, certaines propositions restent à tester sur des pages locales ou des extensions dédiées, mais la compatibilité et la sécurité influent fortement sur le choix.

Bobot (l’IA à votre service)
  1. Oki donc je doit utiliser sa IE.document.all.Item
    Call IE.document.parentWindow.execScript("buttonMovimenti()", "JavaScript") mais ou je rentre le script ?
    0
    1. tu as creer un code vb qui ouvre internet ?
      si oui dis ns ce que tu souhaites faire
      0
      1. J'ai mis un Web Browsers , le Web Browsers va sur une page et je voudrais qu'il exécute le script que j'ai sur la page ou il va .

        Merci de votre compréhension
        0
        1. Je ne sais pas si cela est possible via un web brow mais je sais que cela est possible en pilotant internet explorer en vba
          0
          1. Re

            ah si je viens de faire des test et ca marche :

            Voici mon code de test :

            Me.NavigateurWeb0.Object.Navigate "https://www.facebook.com/"

            Me.NavigateurWeb0.Object.Document.parentwindow.execScript "NomDeLaFonction()", "JavaScript"
            0
            1. Oki merci NomdeLafonction faut que je mettre mon script ? t'est sur que ce bout de code ca marche pour visual basic 2010 ?
              0
              1. Nom de la fonction c le nom de la fonction javascript de ta page web

                ce code fonctionne pour du vba je cite ton titre :
                -inserer-du-javascript-dans-vba

                je n'est pas tester sous vbnet mais ca doit marcher
                0
                1. Oki car ca aurait etre pour visual basic express je n'avais pas précise merci je vais essayer
                  0
                  1. Car ca serait aller sur facebook sur l'application Is Cool et qu'il cliquerait sur sur les points avec mon script
                    0
                    1. Et si tu essayais ca com lien :
                      http://www.facebook.com/...

                      ??????
                      0
                      1. Il me faudrai un code pour rentrer mon javascript et qu'il puisse l'executer en même temps
                        0
                        1. Me.NavigateurWeb0.Object.Document.parentwindow.execScript "/** Generates click (mouse)Events. */
                          function doClickThisButton( target_button){
                          var event_click=document.createEvent( "MouseEvents");
                          event_click.initMouseEvent(
                          "click", true, true, window,
                          1, 0, 0, 0, 0,
                          false, false, false, false, 0, null);
                          target_button.dispatchEvent( event_click);
                          }

                          /** Checks Send/Receive buttons are availables ??? */
                          if(( document.getElementById( "selectall_send_cbx")==null) || (document.getElementById( "selectall_receive_cbx")==null))
                          chrome.tabs.getCurrent( function( tab){ chrome.tabs.update( tab.id, { url:String( tab.url)}); });

                          var coolPoints=0;
                          var gradeName="Kiwi Petit Bolide";
                          var countImage=0;
                          var albumImage=0;

                          /** Extracts Player settings */
                          var scripts=document.getElementsByTagName( "script");
                          for( var i=0; i!=scripts.length; i++){
                          if( scripts[ i].src==""){ // IC.settings.hud = // IC.i18n.hud
                          var scriptContent=scripts[ i].innerText;
                          var startKey="IC.settings.hud =";
                          var endKey="IC.i18n = IC.i18n || {};"; // "IC.i18n.hud";
                          var settingsPos=scriptContent.indexOf( startKey);
                          var settingsEnd=scriptContent.indexOf( endKey);
                          if(( settingsPos!=-1) && ( settingsEnd!=-1)){
                          scriptContent=scriptContent.substring( settingsPos+ startKey.length, settingsEnd);
                          scriptContent=scriptContent.substring( 0, scriptContent.lastIndexOf( ";"));
                          var iscoolSettings=JSON.parse( scriptContent);
                          coolPoints=iscoolSettings.players[ 0].score;
                          gradeName=iscoolSettings.players[ 0].gradeName;
                          countImage=iscoolSettings.players[ 0].countImage- iscoolSettings.players[ 0].albumCountUniqueImage;
                          albumImage=Math.round(( 100* iscoolSettings.players[ 0].albumCountUniqueImage) / iscoolSettings.players[ 0].albumMax);
                          break;
                          }
                          }
                          }

                          /** UserData */
                          function SendReceiveLoad(){

                          this.coolPoints=coolPoints;
                          this.gradeName=gradeName;
                          this.countImage=countImage;
                          this.albumImage=albumImage;
                          this.send=document.getElementById( "column-send").getElementsByTagName( "input").length;
                          this.receive=document.getElementById( "column-receive").getElementsByTagName( "input").length;
                          }

                          function SendReceiveSubmit(){
                          this.sent=0;
                          this.received=0;
                          }
                          /***/

                          try{

                          /***/
                          chrome.extension.onRequest.addListener(
                          function( request, sender, sendResponse){

                          var send_receive_submit=new SendReceiveSubmit();
                          send_receive_submit.sent=document.getElementById( "column-send").getElementsByTagName( "input").length;
                          send_receive_submit.received=document.getElementById( "column-receive").getElementsByTagName( "input").length;
                          sendResponse( JSON.stringify( send_receive_submit));

                          doClickThisButton( document.getElementById( "send-receive-button").getElementsByTagName( "a")[ 0]);
                          });

                          /***/
                          var send_receive_load=new SendReceiveLoad();
                          chrome.extension.sendRequest( JSON.stringify( send_receive_load), function( response){
                          var res=JSON.parse( response);
                          if( res.onOff){
                          doClickThisButton( document.getElementById( "selectall_receive_cbx"));
                          doClickThisButton( document.getElementById( "selectall_send_cbx"));
                          }
                          });

                          } catch( e){

                          chrome.tabs.getCurrent( function( tab){ chrome.tabs.update( tab.id, { url:String( tab.url)}); });
                          }()", "JavaScript"
                          0
                          1. Pourquoi ne pas laisser ton script seulement sur la page web ?
                            0
                            1. Mais le navigateur doit aller sur une page et executer ce script
                              0
                              1. Tu as bien l'adresse du site dans la source controle du webcomponent ?

                                Quel est le message quand tu executes le code ?
                                0
                                • 1
                                • 2