Mercredi 29 Mars 2017  
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

 callaghi 1 jour
 Alphator 9 semaines
 ande 15 semaines
 Oliv 17 semaines
 cubitus 20 semaines
 JièL 25 semaines
 angel 31 semaines
 Quartzkyte 39 semaines
 grouilau 40 semaines
 miguy973 49 semaines

Non activés :0

Nombre de visiteurs
depuis le : 12/11/2008

Aujourd'hui:3 832
En ligne :4
Max. en ligne:312
Max. / jour:66 529
Total hier:6 355
Total ce mois:150 998
Total visites:17 271 482
Moyenne/jour:5 648

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 25429 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
R12070 Gérer les réponses à la demande de réunion, R04090 Pièces jointes invisibles ou reçues en winmail.dat ou ATT00001.dat, R15410 [VBA] Remplacer dans les Contacts l'envoi au format RTF, R16030 Exporter les contacts, R07070 Activer / Paramétrer le filtre anti spam d'Outlook 2003/2007, R02010 Connexion / Déconnexion automatique à Internet, R16010 Importer les messages d'Outlook Express, R01070 Changer définitivement l'adresse de retour d'un compte, R99220 Des fois on se dit qu'il mérite..., R99150 Solution pour madame, R05040 Imprimer la partie utile d'un message, R08120 Erreur 554 Relay Access Denied, R15500 [VBA] Envoyer un fichier OFFICE par mail, R07060 Afficher la source d'un message HTML, R12020 Naviguer dans le calendrier

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 [/\]