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 :

Convertir une fonction Javascript en VBA ?


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Juin 2018
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Maroc

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juin 2018
    Messages : 45
    Par défaut Convertir une fonction Javascript en VBA ?
    Bonjour tout le monde;

    Pour manipuler une liste déroulante en HTML sous Internet Explorer j'ai une fonction javascript que je veux la convertir en VBA si c'est possible et merci d'avance. :

    Le code HTML

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <select id="select1">
    <option value="1" selected="selected">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    </select> - 
    <select id="select2" disabled="disabled">
    <option value="1" selected="selected">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    </select>
    Le code javascript

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    const select1 = document.getElementById('select1');
    const select2 = document.getElementById('select2');
     
    select1.addEventListener('change', () => {
    select2.removeAttribute('disabled');
    });
     
    setTimeout(() => {
    select1.value = 2;
    select1.dispatchEvent(new Event("change"));
    }, 1E3);

    Voici le lien de l'exemple sous : https://codepen.io/Mahdiweb/pen/OJwVoRp

  2. #2
    Membre émérite Avatar de Valtrase
    Homme Profil pro
    Jeune retraité...
    Inscrit en
    Janvier 2016
    Messages
    508
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Jeune retraité...
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2016
    Messages : 508
    Par défaut
    Salut,
    j'ai une fonction javascript que je veux la convertir en VBA si c'est possible et merci d'avance.
    Tu veux manipuler le Html depuis VBA ou tu veux l'équivalent en VBA sur un formulaire ?

  3. #3
    Membre averti
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Juin 2018
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Maroc

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juin 2018
    Messages : 45
    Par défaut
    Citation Envoyé par Valtrase Voir le message
    Salut,

    Tu veux manipuler le Html depuis VBA ou tu veux l'équivalent en VBA sur un formulaire ?
    Oui je veux manipuler une liste déroulante web depuis VBA, j'ai déjà essaie de faire comme ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Application.Wait Now + TimeValue("00:00:01")
    .document.getElementById("select_1").Value = "2"
    Application.Wait Now + TimeValue("00:00:05")
    .document.getElementById("select_2").Value = "1"
    mais ça ne marche pas

  4. #4
    Membre averti
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Juin 2018
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Maroc

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juin 2018
    Messages : 45
    Par défaut
    Merci à tous ceux qui ont essayé de m'aider voici la solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        Set evt = .Document.createEvent("HTMLEvents")
        evt.initEvent "change", True, False
        Set lst = .Document.getElementById("select1")
        lst.selectedIndex = 2
        lst.dispatchEvent evt
        Set lst = .Document.getElementById("select2")
        lst.selectedIndex = 1
        lst.dispatchEvent evt

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/07/2007, 16h04
  2. [AJAX] Comment rajouter une fonction Javascript
    Par darkdrow dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 16/07/2007, 13h25
  3. Réponses: 2
    Dernier message: 13/03/2006, 13h54
  4. Comment appeler une fonction JavaScript depuis Delphi ?
    Par Alfred12 dans le forum Web & réseau
    Réponses: 4
    Dernier message: 17/06/2005, 18h15
  5. [PHP-JS] comment lancer une fonction javascript a partir de php
    Par amika dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 06/06/2005, 19h23

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