Récupération mess. Outlook

  • Initiateur de la discussion Initiateur de la discussion magoo
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

magoo

Guest
Bonjour,

Dans une base de données excel que j'ai réalisée, je souhaite afficher pour mon contact en cours tous les mails le concernant et ce directement sous excel. Soit par lecture dans un repertoire défini de outlook ou par recherche parmis tous les mails.

Je suis sous xp, excel et outlook 2003

Tout exemple qui concerne la gestion de outlook par excel m'intéresse.

Merci beaucoup
 
bonjour

tu peux tester cette macro qui affiche dans la feuille tous les messages reçus , de l'expediteur nommé "mon contact" ( tous les dossiers personnels Outlook sont parcourus )
j'espere que cela pourra t'aider


necessite d'activer la reference Microsoft Outlook xx.xx Object Library
dans Visual Basic Editor (Alt + F11)
menu Outils
References
Coches la ligne "Microsoft Outlook xx.xx Object Library"
cliques sur OK pour valider


Option Compare Text
Dim Dossier As Outlook.MAPIFolder
Dim j As Integer
Sub recuperationMails_Filtre_Expediteur()
'nécéssite d'activer la reference Microsoft Outlook xx.xx Object Library
Dim Ol As New Outlook.Application
Dim Ns As Outlook.NameSpace
Dim Dossier1 As Outlook.MAPIFolder

Set Ns = Ol.GetNamespace("MAPI")
Set Dossier = Ns.Folders(1)
Set Dossier1 = Dossier

SearchFolders Dossier1, ""

End Sub


Private Sub SearchFolders(ByVal Fld As Outlook.MAPIFolder, sFindFolder As String)
Dim i As Integer
Dim Dossier1 As Outlook.MAPIFolder
Dim OLmail As Outlook.MailItem

On Error Resume Next

If Fld.Folders.Count > 0 Then
Do Until i = Fld.Folders.Count

i = i + 1
Set Dossier1 = Fld.Folders(i)

If Dossier1.DefaultItemType = 0 Then
For Each OLmail In Dossier1.Items

If OLmail.SenderName = "mon contact" Then 'emplacement pour filtrer les expediteurs
j = j + 1
Feuil1.Cells(j, 1) = Application.WorksheetFunction.Substitute(OLmail.Body, vbCr, "")
Feuil1.Cells(j, 2) = OLmail.ReceivedTime
Feuil1.Cells(j, 3) = Dossier1.Name
End If

Next
End If

If Dossier1.Folders.Count > 0 Then SearchFolders Dossier1, sFindFolder

Loop
End If

End Sub



bonne soiree
MichelXld
 
Merci beaucoup de la rapidité de ta réponse

Microsoft Outlook xx.xx Object Library est activé
J'ai essayé d'intégrer ton code mais je débute en vba et je n'ai pas réussi et j'ai des messages d'erreurs.
Je t'envoie mon test si tu peux regarder.
Merci
 
rebonsoir

ci-joint une modification de ton classeur .
testé avec WinXP et Excel2002
il ne s'agit que d'un exemple et tu auras certainement des adaptations à faire pour ton projet.

remarque :
le champ OLmail.SenderName ( filtre sur le nom de l'expediteur "mon contact") correspond à la colonne "De " dans la boite de réception Outlook


bonne soirée
MichelXld
 

Pièces jointes

Re: Récupération mess. Outlook **Demande de test**

bonsoir

je ne sais quoi te dire puisque chez moi cela fonctionne

si une ame charitable du forum est prete à faire d'autres essais

rappel :
le nom de l'expediteur correspondond au champ qui apparait dans la colonne "De " , dans la boite de réception outlook


bonne soiree
MichelXld
 
Re: Récupération mess. Outlook **Demande de test**

Bonjour à tous,

Michel merci beaucoup de ton aide.
Les autres exemples outlook que tu proposes sur ton wiki fonctionnent celui ci je n'y arrive pas.

Je vais continuer à chercher.

Si quelqu'un d'autre sur le forum à des exemples concernant Outlook je suis intéressé.

Merci, et bonne journée
 
Bonsoir Magoo, MichelXLD.

Eh bien là, Michel, bravo ! Encore une fois tu nous fournis un morceau de code extra !!
Je te remercie pour tout ce que tu apportes à ce Forum et tout ce que j'apprends ici grâce à toi.

Merci encore.

Didier_mDF
myDearFriend-3.gif
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Formule Outlook,
Réponses
8
Affichages
237
Réponses
3
Affichages
907
Retour