récupérer info entre 2 balises Web

tarvel

XLDnaute Occasionnel
Bonjour,
J'ai regardé sur la Wiki page 7 de Michel Xld concernant la récupération des méta informations d'une page Web...mais je voudrais afficher par un msgbox le début et la fin d'une cellule (case) de tableau balise de type <TD class=data....TD>
Comment faire pour récupérer le texte (le texte change à chaque nouvelle requête...) compris dans cette balise et l'afficher par msgbox???
Merci
;)

Message édité par: tarvel, à: 12/10/2005 03:57
 

MichelXld

XLDnaute Barbatruc
bonjour

dans le meme chapitre 'Les pages html et Internet' , tu as un exemple nommé :

Importer des tableaux contenus dans des pages Web vers une feuille Excel
https://www.excel-downloads.com/threads/ref-wiki-page-7-de-michelxld.92375/


sinon voici un autre exemple

Sub Importer_tableauPageWeb()
'michelxld le 09.06.2005
'
'activer la reference Microsoft HTML Objects Library
'activer la reference Microsoft Internet Controls
Dim IE As InternetExplorer
Dim maPageHtml As HTMLDocument
Dim Htable As IHTMLElementCollection
Dim maTable As IHTMLTable
Dim j As Integer, i As Integer

Set IE = CreateObject('InternetExplorer.Application')
IE.Visible = True

IE.navigate 'http://www.maPageWeb.htm'
Do Until IE.readyState = READYSTATE_COMPLETE
DoEvents
Loop

Set maPageHtml = IE.document
Set Htable = maPageHtml.getElementsByTagName('table') 'objet type table
Set maTable = Htable(0) 'premier tableau dans la page Web

For i = 1 To maTable.Rows.Length 'boucle sur toutes les lignes du tableau

For j = 1 To maTable.Rows(i - 1).Cells.Length 'boucle sur les cellules dans chaque ligne
Cells(i, j) = maTable.Rows(i - 1).Cells(j - 1).innerText
Next j

Next i
End Sub




bonne journée
MichelXld

Message édité par: michelxld, à: 12/10/2005 05:47
 

tarvel

XLDnaute Occasionnel
;)
Bon après plusieurs recherches...ça fonctionne correctement
Pour la page web et remplir le formulaire html d'une page Web pour une requête j'utilise
Set Helem = maPageHtml.getElementsByTagName('input')...pour repérer les tag 'input'...et déclencher le clic voulu!
Ensuite j'avais besoin d'afficher par Msgbox la chaine de caractère entre 2 balises 'table' de type <TD.....<TD>...je n'ai pas pu utiliser le même principe avec Set Helem = maPageHtml.getElementsByTagName('table').
J'ai donc utilisé la recherche de caractères texte en utilisant
textePage = maPageHtml.documentElement.innerText Dim textePage As String
Les balises ont disparu pour faire place à la recherche de simples caractères... en fait j'ai besoin de repérer le premier caractère à trouver et j'utilise la fonction mid.
textePage représente l'ensemble total de la chaine de caractère de la page Web (pas le code source). La fonction Instr me permet de trouver la position de la première occurence recherchée dans la chaine.
Avec la fonction mid j'extrait la sous chaine dont j'avais besoin.
souschaine = Mid(textePage, InStr(1, textePage, 'Résultats'), 80) ''on extrait à partir de la position du caractère défini par Instr, 80 caractères.
et donc
If InStr(1, textePage, 'Résultats') > 0 Then MsgBox souschaine
Merci bcp pour les aides de Michel Xld (avec lequel j'aimerais bien envoyer en MP le fichier en question), ainsi que les pages Wiki!!!

Message édité par: tarvel, à: 16/10/2005 03:05
 

Discussions similaires