bonjour a tous

dans le but d'optimiser mon code vba

je cherche a remplacer mes querytables xlEntirePage par autres choses de plus rapide

lorsqu'il y a qu' une "table" a importer je me débrouille ( Merci a PatrickT. pour son outils iegetelementid ? ) tres pratique & simple

sauf que voila j'ai besoin d'autres infos " text " qui ne sont pas dans des "tables "
et plus que du sur-mesure je préfère du prêt a porter , c'est facilement modifiable et exploitable sur d'autres pages


donc je me suis dit je vais importer la page entière , ça fonctionne
il me suffira de faire quelques "split " pour exploiter mes données ensuite

Peux on importer la page entière et exploiter la table par la même occasion ( en 1 fois ) ?


j'ai fais quelques essais mais sans grande réussite

1er code pour importer text de la page - 2 imie code pour importer une table + essai avec .body.innerText sans reussite

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
Dim IE As InternetExplorer
Dim maPageHtml As HTMLDocument
 
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = False
 
IE.navigate "http://google.com"
    Do Until IE.readyState = READYSTATE_COMPLETE
    DoEvents
Loop
 
Text = IE.document.body.innerText


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
Sub testdt()
 
Columns("A:l").Clear
Dim ReQ As Object, UrL As String
UrL = "http://www.geny.com/partants-pmu/2015-05-19-longchamp-pmu-prix-des-gobelins_c714591"
Set ReQ = CreateObject("microsoft.xmlhttp")
ReQ.Open "POST", UrL, False
ReQ.setRequestHeader "Accept", "text/html, application/xhtml+xml, */*"
ReQ.setRequestHeader "Accept-Language", "fr-FR"
ReQ.setRequestHeader "User-Agent", "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)"
ReQ.setRequestHeader "Accept-Encoding", "gzip, deflate"
ReQ.setRequestHeader "Host", "www.geny.com"
ReQ.setRequestHeader "DNT", 1
ReQ.setRequestHeader "Connection", "Keep - Alive"
ReQ.setRequestHeader "Cookie", " JSESSIONID=3E554B80B1ABBC36A2C53EC91C219C77.raoul_1;"
ReQ.send
'MsgBox ReQ.responsetext
 
 
 
Set fauxdoc = CreateObject("htmlfile")
With fauxdoc
 
'''body.innerText  = ReQ.responsetext  ??? 
 
.body.innerhtml = ReQ.responsetext
 
 
 
Set grouptable = .getelementsbytagname("TABLE")
For i = 0 To grouptable.Length - 1
If grouptable(i).ParentNode.ID = "dt_partants" Then Set matable = grouptable(i)
Next
For Each elem In matable.all
If elem.tagname = "TD" Then elem.innerhtml = elem.innerText
Next
faire = .ParentWindow.clipboardData.SetData("text", matable.outerhtml)
With Sheets(1)
Set cel = .Cells(Rows.Count, 1).End(xlUp).Offset(2, 0)
cel.Select
.Paste:
End With
faire = .ParentWindow.clipboardData.ClearData("text")
End With
End Sub