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 :

Remplir un formulaire page web avec base de données


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Passionné
    Inscrit en
    Août 2023
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Passionné

    Informations forums :
    Inscription : Août 2023
    Messages : 4
    Par défaut Remplir un formulaire page web avec base de données
    Bonjour à tous,

    Je viens parmi vous pour trouver de l'aide.
    Etant dans une entreprise avec un reseau fermé, et une politique SI dur.
    Il faut que passe par du VBA.

    Je cherche la solution pour remplir une page WEB, avec une base de données excel.
    ci dessous une partie des infos à remplir.
    Nom : capture.png
Affichages : 521
Taille : 32,5 Ko

    Merci à vous

  2. #2
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 246
    Par défaut
    Hello,
    en utilisant Chromium Automation for VBA constitué de modules de classe VBA et qui permet de piloter les principaux navigateurs : voir ici
    Pour une saisie automatique dans le champ indiqué par rapport à l'exemple mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    objBrowser.getElementByID("nombreTempsNonPayesSalaire_11").value = "valeurAmettre"
    Si le site intranet accepte internet explorer comme navigateur on peut utiliser le pilotage Internet explorer . Il n'y a rien à installer on utilise le contrôle COM InternetExplorer.Application

    Ami calmant, J.P

  3. #3
    Candidat au Club
    Homme Profil pro
    Passionné
    Inscrit en
    Août 2023
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Passionné

    Informations forums :
    Inscription : Août 2023
    Messages : 4
    Par défaut
    je teste ca lundi, merci de la rapidité de réponse

  4. #4
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 246
    Par défaut
    Hello,
    comme en téléchargeant Chromium Automation for VBA on obtient un addin xlam, il se pourrait que tu ne puisses pas l'ouvrir dans le Excel de ton entreprise. Voici donc un exemple en utilisant l'objet COM internet explorer que ne nécessite pas d'installer quoi que ce soit. Voici un exemple d'utilisation de cet objet COM :
    Dans cet exemple on fait les choses suivantes :
    1 - On ouvre le moteur de recherche Bing en mode visible avec Internet Explorer.
    2 - On remplit la zone de texte de la page Bing avec le titre de ton message
    3 - On clique sur l'icône de recherche
    4 - On attend d'être sur la page des résultats en scrutant si un certain élément HTML est présent ( avec un timeout de 5 secondes)
    5 - On affiche le titre et le début du message du premier élément trouvé

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    #If VBA7 Then Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr)
    #Else
     Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    #End If
    Sub Test_IE_Developpez()
        Dim IE As Object, IEDOC As Object, elem As Object
        Set IE = CreateObject("InternetExplorer.Application")
        IE.Visible = True
        On Error GoTo ErrHandler
    1   IE.Navigate "https://bing.com"
    2   WaitReady IE
    3   Set IEDOC = IE.Document
    4   IEDOC.getElementById("sb_form_q").Value = """Remplir un formulaire page web avec base de données"""
    5   IEDOC.getElementById("sb_form_go").Click
    6   Set elem = WaitForQS(IE, "li.b_algo > h2", 50)
        Debug.Print elem.innerText
    7   Set elem = IEDOC.querySelector("li.b_algo > div.b_caption")
        Debug.Print elem.innerText
    8   IE.Quit
        Set elem = Nothing: Set IE = Nothing: Set IEDOC = Nothing
        Exit Sub
    ErrHandler:
        Debug.Print "Erreur ligne " & Erl: IE.Quit: Set elem = Nothing: Set IE = Nothing: Set IEDOC = Nothing
    End Sub
     
    Sub WaitReady(IE As Object)
       'On boucle tant que la page n'est pas totalement chargée
       Do While IE.ReadyState <> 4 Or IE.Busy
          DoEvents: Sleep (100)
       Loop
    End Sub
     
    Function WaitForQS(IE As Object, Query As String, TimeOut As Integer) As Object
      Dim elem As Object, x As Integer
      x = 0
      On Error Resume Next
      Do While elem Is Nothing
          DoEvents: Sleep (100): x = x + 1
          'Debug.Print x
          If x > TimeOut Then
              MsgBox "TimeOut WaitForQS"
              IE.Quit: Set IE = Nothing: End
          End If
          Set elem = IE.Document.querySelector(Query)
       Loop
     Set WaitForQS = elem
    End Function
    Ami calmant, J.P

  5. #5
    Candidat au Club
    Homme Profil pro
    Passionné
    Inscrit en
    Août 2023
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Passionné

    Informations forums :
    Inscription : Août 2023
    Messages : 4
    Par défaut
    mon entreprise à bloqué internet explorer, je peux passer que microsoft edge ou mozilla firefox

  6. #6
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 246
    Par défaut
    Hello,
    Citation Envoyé par Mister49 Voir le message
    mon entreprise à bloqué internet explorer, je peux passer que microsoft edge ou mozilla firefox
    De quelle façon ? Pas accessible pour un lancement ? Normalement internet explorer ne peut pas être enlevé complétement de windows. Le contrôle COM d'internet explorer est-il accessible ? Regarde si dans outils/Références de l'Editeur VBA tu vois Microsoft Internet Controls.

    Citation Envoyé par Mister49 Voir le message
    Une autre solution ?
    Chromium Automation for VBA ne te convient pas ? si tu ne peux pas ouvrir son addin xlam dans l'excel de ton entrerprise, je peux mettre dans ce forum un classeur qui contient les modules de classe de ce projet. Il suffit alors de les copier dans le classeur où l'on veut les utiliser.

    Ami calmant, J.P

  7. #7
    Candidat au Club
    Homme Profil pro
    Passionné
    Inscrit en
    Août 2023
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Passionné

    Informations forums :
    Inscription : Août 2023
    Messages : 4
    Par défaut
    Une autre solution ?

Discussions similaires

  1. relations entre une page web et base de donnée
    Par soufiane2102 dans le forum Access
    Réponses: 1
    Dernier message: 07/12/2008, 08h49
  2. Page web connecté base de donnée accès
    Par punisher999 dans le forum Développement Web en Java
    Réponses: 1
    Dernier message: 27/09/2008, 09h05
  3. Réponses: 3
    Dernier message: 11/12/2006, 19h57
  4. [ JSP ] Formulaire tres dynamique avec base de données.
    Par Dukedoom dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 08/06/2006, 09h19

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