Lorsque l'on effectue une recheche avancée de message sous outlook 2003 il n'est pas possible d'acceder au chemin des messages trouvé. La seule information disponible est le repertoire parent.
Lorsque l'on selectionne un mail et que l'on lance la macro une boite de dialogue apparait indiquant le chemin de repertoire du mail selectionné.
Pour que l'utilisation de cette macro soit pertinente, il faut utiliser la fonction "advance find" sous outlook et envoyé le resultat de la recherche dans un repertoire specifique "search folder".
Le code:
Source / Exemple :
Sub AfficherPath()
Dim OutlookApp As New Outlook.Application
Dim OutlookExp As Outlook.Explorer
Dim OutlookSélex As Outlook.Selection
Dim x As Integer
'Procedure de traitement des messages
Set myOlApp = CreateObject("Outlook.Application")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookExp = OutlookApp.ActiveExplorer
Set OutlookSélex = OutlookExp.Selection
'Verifie qu'un message a bien ete selectionné
If OutlookSélex.Count < 1 Then
MsgBox "Aucun message n'est sélectionné.", vbExclamation, "Erreur"
Exit Sub
End If
For x = 1 To OutlookSélex.Count
Set myItem = OutlookSélex.Item(x)
'affiche le chemin du repertoire du fichier selectionné
MsgBox "Found message with folder: " & myItem.Parent.FolderPath
Next x
Set myattachments = Nothing
Set myItem = Nothing
End Sub
Conclusion :
C'est tout bete, mais je ne suis pas parvenu à trouvé d'autres solutions à mon probleme sur le net
Il est surement possible d'ameliorer ce code en donnant le chemin du repertoire directement en cliquant sur un mail trouvé dans l'"advance find", mais je n'y suis pas arrivé.
Merci aux travaux deja effectué et mis en ligne sur se site qui m'on permis de trouver une solution à mon probleme.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.