Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Lire et copier des données voisines dans une page Internet

Nonno 94

XLDnaute Occasionnel
Bonsoir le Forum,

n'ayant pas réussi à le faire, je viens solliciter votre aide pour compléter un code qui me permettra d'importer simultanément plusieurs données voisines dans une page Internet.
J'utilise actuellement un code qui me permet d'importer successivement 2 données voisines comme vous pourrez le voir dans le fichier joint (cellules bleues).

Voici ce code:

Code:
Sub Lire_Objectifs_et_Potentiels()

       Dim IE As New InternetExplorer
        Dim IEDoc As HTMLDocument
        Dim HtmlTag As IHTMLElementCollection
        Dim Valeur As String, Cel As Range, I As Integer


        Sheets("Valeurs").Select
            ActiveSheet.Unprotect


        For Each Cel In Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row)
            IE.Navigate Cel
            IE.Visible = False
            Do Until IE.readyState = READYSTATE_COMPLETE
                DoEvents
            Loop
            Set IEDoc = IE.document
            Set HtmlTag = IEDoc.getElementsByTagName("td")


            Valeur = "N/A"
            For I = 0 To HtmlTag.Length - 1
                If HtmlTag.Item(I).innerText = "Objectif de cours à 3 mois" Then
                    Valeur = HtmlTag.Item(I + 1, I + 3).innerText
                    Exit For
                End If
            Next I

            Cel.Offset(1, 3) = Valeur

        For I = 0 To HtmlTag.Length - 1
                If HtmlTag.Item(I).innerText = "Potentiel" Then
                    Valeur = HtmlTag.Item(I + 1).innerText
                    Exit For
                End If
            Next I
            Cel.Offset(2, 3) = Valeur
        Next Cel


    Set HtmlTag = Nothing
    Set IEDoc = Nothing
    Set IE = Nothing

            Range("B1").Select
                ActiveSheet.Protect
           
                    ActiveWorkbook.Save
    End Sub

Pourriez-vous me dire comment le modifier pour importer simultanément les 6 données voisines des lignes 151 à 153 de la page "Accor" (2 dans les cellules bleues et 4 dans les cellules jaunes) pour obtenir le tableau "C2-D4" de la page "Valeurs" ?

Avec mes remerciements et en vous souhaitant une bonne soirée.

Cordialement.
Nonno 94.
 

Mytå

XLDnaute Occasionnel
Re : Lire et copier des données voisines dans une page Internet

Salut le forum

En gardant le même principe qu'une précédente réponse.
Code:
Sub Lire_Blocs()
    Dim IE As New InternetExplorer
    Dim IEDoc As HTMLDocument
    Dim HtmlTag As IHTMLElementCollection
    Dim Titre(2) As String, Valeur(2) As String
    Dim Cel As Range, I As Integer

    For Each Cel In Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row)
        IE.Navigate Cel
        IE.Visible = False
        Do Until IE.readyState = READYSTATE_COMPLETE
            DoEvents
        Loop
        Set IEDoc = IE.document

        Set HtmlTag = IEDoc.getElementsByTagName("td")

        Titre(0) = "Évolution semaine": Valeur(0) = "N/A"
        Titre(1) = "Objectif de cours à 3 mois": Valeur(1) = "N/A"
        Titre(2) = "Potentiel": Valeur(2) = "N/A"
        For I = 0 To HtmlTag.Length - 1
            If HtmlTag.Item(I).innerText = Titre(0) Then
              Valeur(0) = HtmlTag.Item(I + 1).innerText
              If HtmlTag.Item(I + 2).innerText = Titre(1) Then
                  Valeur(1) = HtmlTag.Item(I + 3).innerText
              End If
                If HtmlTag.Item(I + 4).innerText = Titre(2) Then
                    Valeur(2) = HtmlTag.Item(I + 5).innerText
                End If
                Exit For
            End If
        Next I
        Cel.Offset(0, 2) = Titre(0): Cel.Offset(0, 3) = Valeur(0)
        Cel.Offset(1, 2) = Titre(1): Cel.Offset(1, 3) = Valeur(1)
        Cel.Offset(2, 2) = Titre(2): Cel.Offset(2, 3) = Valeur(2)
    Next Cel
    
    IE.Quit
    Set HtmlTag = Nothing
    Set IEDoc = Nothing
    Set IE = Nothing

    Range("B1").Select

End Sub
Mytå
 

Nonno 94

XLDnaute Occasionnel
Re : Lire et copier des données voisines dans une page Internet

Bonsoir Myta,

Merci pour cette réponse qui complète le code que vous m'avez précédemment transmis et que je ne suis pas parvenu à modifier.

Cordialement.
Nonno 94.
 

Discussions similaires

Réponses
1
Affichages
287
Réponses
2
Affichages
206
Réponses
11
Affichages
404
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…