Mercredi 20 Février 2019  
Navigation
FAQ Outlook
» Foire Aux Questions «
Recherche
Téléchargements
Forums Outlook
Plan du site
Liens
Login

Les inscriptions sont fermées

Pseudo

Mot de passe

Se souvenir de moi



Mot de passe oublié ? Mot de passe oublié ?
Connexions
Bienvenue à [FAMACLUB]
le 1,414ème membre
Visiteurs en ligne : 4
Membres en ligne : 0

 jcgdisle 13 semaines
 EMERGENCY 33 semaines
 beaulieu 45 semaines
 callaghi 49 semaines
 Charlie76 54 semaines
 joscopp 65 semaines
 JièL 65 semaines
 julbast 66 semaines
 pirobert 66 semaines
 zorro71 90 semaines

Non activés :0

Nombre de visiteurs
depuis le : 12/11/2008

Aujourd'hui:485
En ligne :4
Max. en ligne:312
Max. / jour:66 529
Total hier:4 083
Total ce mois:105 565
Total visites:21 198 743
Moyenne/jour:5 651

Dernières 24h

























Publicité ; elle permet de financer le site
Navigation parmi les catégories/articles
« Catégorie     Q15000 Macros - VBA (41)  Catégorie »
[<<]  « Article  Article »  [>>]
R15200 [VBA] Enregistrer en .msg
Enregistre  le mail, le contact, la tâche ou le rdv en cours en fichier .msg dans un dossier de l'explorateur.

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
 
'Ici on construit le nom du fichier qui sera créé
NomExport = objCurrentMessage.Subject & objCurrentMessage.CreationTime
 
'Ici on définit le répertoire où l'enregistrer
repertoire = "c:\temp\"
'repertoire = BrowseForFolder("Choisissez la destination", SDossier(5, 0)) & "\"
 
'Ici on supprime les caractères non autorisés dans les noms de fichiers
PathNomExport = repertoire & "Email " & Left(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace( _
NomExport,
"\", ""), "/", ""), ":", ""), "*", ""), "?", ""), "<", ""), ">", ""), "|", ""), ".", ""), """", ""), vbTab, ""), Chr(7), ""), 160) & ".msg"
 
'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
 
Sub LanceSurOuvert()
sav_mail_as_msg
End Sub
 
 
Sub LanceSurSelection()
Dim MonOutlook As Outlook.Application
Dim LeMail As Object
Dim LesMails As Outlook.Selection
Set MonOutlook = Outlook.Application
 
Set LesMails = MonOutlook.ActiveExplorer.Selection
 
   
For Each LeMail In LesMails
    sav_mail_as_msg LeMail
   
Next LeMail
 
Set LesMails = Nothing
MsgBox "Fin de traitement"
End Sub


Il faut exécuter LanceSurOuvert à partir de l'élément ouvert ou LanceSurSelection à partir d'une sélection d'éléments.

Pour choisir directement le dossier où enregistrer le fichier copié
dans un autre module ou avant la macro ci-dessus la fonction BrowseForFolder se trouvant là :


http://www.c2i.fr/code.asp?IDCode=1083

Publié par Oliv le jeudi 15 février 2007 18:21 3 Commentaires 28124 Lecture(s) Imprimer
Commentaires
#1 | Snejena le jeudi 19 février 2009 16:56
Oliv, merci pour ce code mais je n'arrive pas à accèder à celui sur http://www.c2i.fr/code.asp?IDCode=1083

Merci
#2 | JièL le jeudi 19 février 2009 19:31
C'est le souci avec les liens externes, les sites changent et nous on ne suit pas
#3 | Paul73 le lundi 14 février 2011 11:58
Merci beaucoup pour ce bout de script, il a marché au premier coup, et il va me rendre de grand service.

Pour mettre la bon format de date, je remplace "objCurrentMessage.CreationTime" par "Format(objCurrentMessage.CreationTime, "yyyy-mm-dd" )"
Copyright et partage
Ce site est sous licence Creative Commons.
Vous pouvez utiliser toutes les informations présentent ici, mais il vous est interdit de les reproduire sans citer la source.

Creative Commons License
OUI au partage
NON au « copillage »

Ajouter aux favoris / partager : 
URL :
BBcode :
HTML :
Cliquez ci dessus sur le lien que vous voulez copier et [Ctrl] + [C] ou cliquez sur le bouton [ C ]
Articles similaires
Articles Catégories
R15045 [VBA] Ouvrir l'arborescence des pst contenant une boîte de réception Q15000 Macros - VBA
R15930 [VBA] Création de menu dans outlook Q15000 Macros - VBA
R15380 [VBA] Envoi via VBA : suppression de la confirmation d'envoi Q15000 Macros - VBA
R15280 [VBA] Exporter un mail et l'ouvrir dans IE avec ses images Q15000 Macros - VBA
R15930 [VBA] Eliminer les doublons Q15000 Macros - VBA
Nuage de tags
R01010 Définir Outlook comme messagerie par défaut, R18030 Les noms des dossiers s'affichent en Anglais, R12040 Créer un rendez-vous, R06070 Classer automatiquement les messages reçus ou envoyés, R08060 Recréer un profil, R12110 Un éphéméride dans Outlook, R11040 Restaurer ses règles de gestion des messages, R99220 Des fois on se dit qu'il mérite..., R12080 Publier son planning sur Internet / Intranet ou un réseau personnel, R16040 Importer le carnet d'adresses d'Outlook Express dans Outlook, R03050 Définir le papier à lettres par défaut, R00100 Afficher les GIFs animés avec Outlook 2007, R15930 [VBA] Eliminer les doublons, R99110 Ebook pas cher, R08070 Réparer / remettre en état Outlook ou le PST (6 solutions à appliquer dans l'ordre)

aucun Crack, CrackZ, no-CD, DownloadZ, TelechargementZ, Serial, Numéro de série, N0 de série, Serialz ni Keygen pour Outlook sur ce site.

Blague aléatoire
Publicité
Météo Marseille
[/\] Copyright JièL / Jean-Louis Goubert © 2003-2009 [/\]