Automatisation importation d'un contenu web

Inv-Tuls Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,

Je suis face à un problème concernant une importation d'un tableau web venant d'un site sur excel dans le cadre d'un projet universitaire. Je ne sais pas si c'est possible de le faire de manière automatisée avec un bouton (car le site reste fixe) ou bien avec une requête excel mais je n'ai pas encore trouvé de moyen de le faire.
Afin de garder la mise en forme, un screenshot de cette partie du site (le tableau) serait optimal. Quelqu'un aurait-il une idée ou une piste ?

Merci d'avance

1 réponse

  1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    Avec un Webbrowser afficher le site dans un UserForm et faire une capture d'écran :

    https://www.cjoint.com/c/HKqpGPaJabQ

    Voilà
    0
    1. Inv-Tuls Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci beaucoup pour ta réponse cs_Le Pivert, cela résout une bonne partie de mon problème.
      En fait, j'ai oublié de mentionner que pour que je fasse mon screenshot sur le site, je dois d'abord appuyer sur un bouton sur ce site qui filtre une partie des données de mon tableau
      0
    2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Tu appuies sur ton bouton et ensuite sur Capture d'écran.
      Pour cela il faut modifier le code comme ceci:

      Dim maPageHtml As HTMLDocument
      Private Sub CommandButton1_Click()
      Me.WebBrowser1.Navigate "https://www.commentcamarche.net/forum/affich-35697115-automatisation-importation-d-un-contenu-web" 'mettre l'adresse du site
      End Sub
      Private Sub CommandButton2_Click()
      Dim Ws As Worksheet
      Set maPageHtml = WebBrowser1.Document
      Me.WebBrowser1.Navigate maPageHtml.URL
        'Copie d'écran de la forme active
          keybd_event vbKeySnapshot, 1, 0&, 0&
          DoEvents
           'Ajoute une feuille pour coller l'image de la forme
          Set Ws = Sheets.Add
          Ws.Paste
          'impression centrée dans la page
          With Ws
              .PageSetup.CenterHorizontally = True
              .PageSetup.CenterVertically = True
              '.PrintOut
          End With
      End Sub


      voilà

      @+ Le Pivert
      0
    3. Inv-Tuls Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci. J'avais déjà eu ce problème, mais c'est normal qu'un message d'erreur me soit renvoyé en disant "Utilisation incorrecte du mot Me " ?

      Merci pour ton aide LePivert
      0
    4. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Tu n'est pas obligé de mettre Me tu peux mettre simplement :
      WebBrowser1.Navigate maPageHtml.URL


      Voici un fichier à dezipper avec 2 classeurs:

      Un avec l'UserForm redimensionnable et le second sans barre de titre

      Tu as le choix

      https://www.cjoint.com/c/HKrlimBt2BQ


      @+ Le Pivert
      0