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
| Sub sav_mail_as_msg(Optional objCurrentMessage As Object)
'By Oliv' juillet 2007 pour OUTLOOK 2003
If objCurrentMessage Is Nothing Then Set objCurrentMessage = ActiveInspector.CurrentItem
Dim MSG
MSG = InputBox("Mentionnez la référence du mail : ")
'Ici on construit le nom du fichier qui sera créé
NomExport = MSG 'objCurrentMessage.Subject & objCurrentMessage.CreationTime
'Ici on défini le répertoire où l'enregistrer
repertoire = "ADRESSE DU SERVEUR " 'Par principe de confidentialité je ne peux le mentionner mais fonctionne parfaitement avec une adresse IP
'repertoire = BrowseForFolder("Choisissez la destination", SDossier(5, 0)) & "\"
'Ici on supprime les caractères non autorisé dans les noms de fichiers
PathNomExport = repertoire & Left(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace( _
NomExport, "\", ""), "/", ""), ":", ""), "*", ""), "?", ""), "<", ""), ">", ""), "|", ""), "$", ""), """", ""), vbTab, ""), Chr(7), ""), 160)
'Ici on vérifie que le fichier n'existe pas déjà sinon il serait écrasé
n = 1
MemPath = PathNomExport
While Dir(PathNomExport) <> ""
MsgBox "Le fichier " & vbCr & PathNomExport & vbCr & "existe déjà", vbInformation
PathNomExport = Left(MemPath, Len(MemPath) - 4) & "(" & n & ")" & ".msg"
n = n + 1
Wend
objCurrentMessage.SaveAs PathNomExport, OlSaveAsType.olMSG
End Sub |
Partager