Bonjour à tous,
Comme évoqué dans l'intitulé je cherche à extraire avec un prog en VBA sur excel les données d'un tableau se trouvant sur un site internet en PHP.
Tout d'abord le tableau ne se trouvant pas sur la première d'accueil du site la première chose que j'ai fais est de simuler un clic sur un lien afin d'arriver sur la page ou se trouve le tableau. J'y suis arrivé sans trop de problème.
Ensuite j'ai trouvé à l'aide du code source du site que les données de mon tableau se trouvaient dans un élément "HTMLtable". Par conséquent j'ai donc déclarer une variable HTML table et j'ai ensuite introduit le contenu voulu dans cette variable.
J'ai ensuite extrait le contenu texte de cette variable dans une cellule de ma feuille excel. => range("A1")=variable.innerText.
Problème : il est difficile voir inexploitable d'utiliser le texte présent dans la cellule, en effet il y a beaucoup de caractères pour une même cellule et des saut de ligne entre chacun d'entre eux(Alt+enter). Je ne peux donc pas utiliser l'outil prévu dans excel qui convertit un texte en colonne afin de trier ce dont j'ai besoin.
Au final tout ce que je veux faire c'est uniquement extraire quatre lignes d'un tableau qui compte uniquement 15 colonnes. Les données sont des nombres entiers. Le problème principal c'est que chaque donnée pris indépendamment dans le code source n'a ni name ni ID pour venir les chercher de façon "individuel".
Pouvez vous me dire comment je pourrais faire pour sortir uniquement les données voulues dans une seul cellule ou mieux encore de transférer mes 4 lignes x 15 données dans une plage de 4 x 15 cellules sur excel?
J'espère avoir été assez clair.Merci par avance pour votre aide.
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 Sub info() 'Déclaration des variables Dim IE As New InternetExplorer Dim A As HTMLDocument Dim B As HTMLDocument Dim Link As HTMLLinkElement Dim PO As HTMLTable 'Chargement d'une page web Google IE.navigate "http://www.pronostics-turf.info/fg-pronostics-presse.php" 'Affichage de la fenêtre IE IE.Visible = True WaitIE IE Set A = IE.document 'lien vers la page synthèse Set Link = A.Links(6) 'la table se trouve dans la page chargé lorsque qu'on appuie sur le bouton syntèse qui est le lien n°7 Link.Click WaitIE IE Set B = IE.document Set PO = B.body.all(56) Range("A1") = PO.innerText Set A = Nothing Set B = Nothing Set PO = Nothing Set Link = Nothing IE.Quit End Sub Sub WaitIE(IE As InternetExplorer) 'On boucle tant que la page n'est pas totalement chargée Do Until IE.readyState = READYSTATE_COMPLETE DoEvents Loop End Sub
Cldt
Alexandre
Partager