Bonjour,
J'ai bien trouvé comment extraire des données d'une page WEB. Je voudrais faire pareil dans un message HTML. Y a-t-il une façon de procéder ?
Cordialement.
Daniel
Bonjour,
J'ai bien trouvé comment extraire des données d'une page WEB. Je voudrais faire pareil dans un message HTML. Y a-t-il une façon de procéder ?
Cordialement.
Daniel
Bonjour à toi,
Tu entends quoi par message HTML ?
Tu as un fichier .html à la base ?
Bonsoir,
Non, si tu utilises Outlook, il ss'agit de la propriété "HTMLBody" du message. C'est à peu près tous les messages que je reçois.
Merci de ton attention.
Ta question devrait alors être dans la section Outlook non ?
Bonjour,
tu souhaites récupérer quoi exactement ? Il s'agit de messages type dans lesquels tu veux sortir une valeur de texte ? Ou plutôt l'aspect mise en forme ?
car quand tu vas récupérer le contenu du .HTMLBody, il va falloir écrémer/purger les balises et/ou extraire une partie précise.
Bonjour,
Merci de t'intéresser à mon cas. En gros, il s'agit de récupérer une adresse et les données d'un tableau avec un nombre de lignes variables en dessous.
Bonjour,
Oui, évidemment, je n'y avais même pas pensé tellement je suis habitué à ce forum... Mais le problème est plus généralement de fouiller dans du code HTML. Et je me suis dit que ce forum était assez pointu pour me répondre (outre que la macro sera une macro Excel), mais ce n'est pas un problème si le forum Outlook peut me fournir une solution.
Merci pour cette idée.
En fait fraudais que tu détail un peu plus.
Tu part de quoi ?
Interaction avec Outlook, extraction d'un message puis analyse ?
Tu as déjà ton message au format HTML dans un fichier dipso, il ne reste qu'as le traité ?
Peu tu nous détailler la chaîne ?
Je pars de messages reçus dans Outlook ayant la même structure. Une adresse et un tableau de 5 colonnes et d'un nombre variables de lignes.
Je cherche à récupérer l'adresse et le contenu du tableau dans un classeur Excel.
J'ai déjà trouvé ça sur le forum Outlook :
Je vais peut-être pouvoir m'en sortir grâce à ça (pas eu encore le temps d'adapter).
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 Sub Copy_tableau_html() 'Co Oliv- 'Nécessite d 'activer les references 'Microsoft HTML Objects Library Dim maPageHtml As New HTMLDocument Dim Htable As IHTMLElementCollection Dim maTable As IHTMLTable Dim j As Integer, i As Integer Dim Cible As String Set appOutlook = CreateObject("Outlook.Application") 'Set appOutlook = Application ' si macro dans OUTLOOK Set oMail = appOutlook.ActiveInspector.CurrentItem maPageHtml.body.innerHTML = oMail.HTMLBody 'objet type table Set Htable = maPageHtml.getElementsByTagName("table") 'premier tableau dans la page Web Set maTable = Htable(0) 'boucle sur toutes les lignes du tableau For i = 1 To maTable.Rows.Length 'boucle sur les cellules dans chaque ligne For j = 1 To maTable.Rows(i - 1).Cells.Length Cible = maTable.Rows(i - 1).Cells(j - 1).innerHTML If Left(Cible, 8) = "<A href=" Then ActiveSheet.Hyperlinks.Add Cells(i, j), Mid(Cible, 10, InStr(10, Cible, ">") - 11) Else Cells(i, j) = maTable.Rows(i - 1).Cells(j - 1).innerText End If Next j Next i End Sub
Partager