Extraction données OUTLOOK sur Excel
d
Bonjour à tous,
J'ai un dossier OUTLOOK qui contient plusieurs mail de fiches prospects avec des informations que je souhaiterais analyser sur Excel. Savez vous comment extraire ces données sur excel ?
Je vous mets une capture d'écran pour comprendre le problème : Sur la capture, on voit le mail type que je reçoit (j'ai besoin d'extraire ces données) et j'ai plus de 200 mails identiques avec des prospects différents. Merci pour votre aide.
J'ai un dossier OUTLOOK qui contient plusieurs mail de fiches prospects avec des informations que je souhaiterais analyser sur Excel. Savez vous comment extraire ces données sur excel ?
Je vous mets une capture d'écran pour comprendre le problème : Sur la capture, on voit le mail type que je reçoit (j'ai besoin d'extraire ces données) et j'ai plus de 200 mails identiques avec des prospects différents. Merci pour votre aide.
Bonjour,
une proposition (non testée dans ton environnement précis)
Sub aargh()
Set ol = CreateObject("outlook.application")
Set ns = ol.GetNamespace("MAPI")
Set Fldr = ns.GetdefaultFolder(6) 'boite de réception par défaut
champs = Split("id societe :,email:,nom :,prenom :,activite :,ville ,telephone", ",")
For Each msg In Fldr.Items 'on prend chaque mail
texte = msg.body 'on en prend le contenu
For i = LBound(champs) To UBound(champ) 'on chercher les valeurs des différents champs
champ = trouvechamp(texte, champs(i), Chr(10))
If i = LBound(champs) Then
If champ = "non trouve" Then 'pas trouvé le champ id societe on passe au mail suivant
Exit For
Else
k = k + 1 'id societe trouvé on incremente le numero de ligne
End If
End If
Cells(k, i + 1) = champ 'on met la valeur du champ sur la feuille
Next i 'champ suivant
Next msg 'message suivant
End Sub
Function trouvechamp(t, del1, del2)
'retourne un texte se trouvant dans t entre les chaines del1 et del2
trouvechamp = "non trouve"
s1 = InStr(t, del1)
If s1 = 0 Then Exit Function
s2 = InStr(s1 + 1, t, del2)
If s2 = 0 Then Exit Function
trouvechamp = Mid(t, s1 + Len(del1) + 1, s2 - s1 - Len(del1) - 1)
End Function