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 48 49 50 51 52 53 54 55 56 57 58 59
| Sub RechercheVBAExcel()
'Déclaration des variables
Dim ie As New InternetExplorer
Dim IEDoc As HTMLDocument
Dim DivSearch As HTMLDivElement
Dim iDivChild As Integer
'Il faudra adapter et tout vérifier je ne peux faire aucun test, ni placer des espions pour regarder les contenus...
'Chargement de la page contenant les résultats de la recherche
ie.navigate "https://www.societe.com/cgi-bin/search?champs=" & "Auchan" 'Feuil1.Cells(x, 1)
'Affichage de la fenêtre IE
ie.Visible = True
'On attend le chargement complet de la page
WaitIE ie
'On pointe le membre Document
Set IEDoc = ie.Document
' Inutile puisque'on pointe directement la page contenant le résultat de la recherche
' 'On pointe notre Zone de texte
' Set InputSocieteZoneTexte = IEDoc.all("input_search")
'
' 'On définit le texte que l'on souhaite placer à l'intérieur
' InputSocieteZoneTexte.Value = Cells(1, 1)
'
'IEDoc.all("buttsearch").Click
' 'On attend la fin de la recherche
' 'On libère les variables
' WaitIE ie
'On pointe le DIv dont l'id est "search"
On Error Resume Next
Set DivSearch = IEDoc.all("search")
On Error GoTo 0
'On regarde si l'élément existe bien
If Not DivSearch Is Nothing Then
'On pointe le Div contenant les <a>
Set DivSearch = DivSearch.ChildNodes(1)
'On boucle sur les <a>
'Regardes dans le tuto les différente solution de boucle
'Pour chaque élément on prend le href, il y a des exemples il me semble
'Le href peut-être stocké dans un tableau sur Excel Ou dans un tableau virtuel,
'dans ces deux cas, les liens pourront être cherché ultérieurement par une autre macro qu récupèrera les données recherchées
'Ou chargé dans un autre document ie avec un bout de code (ou une autre macro) qui récupèrera les données au fur et à mesure
'Fin de la boucle
End If
Set ie = Nothing
Set IEDoc = Nothing
End Sub |
Partager