Macro Outlook pour la suppression des pièces jointes

Je suis un gros utilisateur d’Outlook au travail. Autant il est possible de détacher en une fois l’ensemble des pièces jointes reçues avec un e-mail autant je n’ai jamais compris pourquoi il est n’y avait pas une fonctionnalité permettant de supprimer l’ensemble de ces même pièces jointes. Voici une macro qui permet de remédier à ce manque. Il vous suffira ensuite de l’associer à un boutons dans votre barre d’outil et éventuellement d’y associer un raccourci clavier.

Sub supprimerAttachement() ‘Macro destinée à supprimer les pieces jointes d’un e-mail

Dim OlApp As Outlook.Application Dim objItem As Outlook.MailItem Dim compteur As Integer Dim nomFichier As String

Set OlApp = New Outlook.Application

On Error Resume Next

For Each objItem In Application.ActiveExplorer.Selection compteur = objItem.Attachments.Count

If compteur > 0 Then ‘introduction d’une ligne de séparation dans le corps du mail objItem.Body = « ————–  » & vbCr & objItem.Body End If

Do While compteur > 0 ‘place le nom du fichier qui va être supprimé dans le corps du mail nomFichier = objItem.Attachments.Item(1).FileName objItem.Body = « >> Attachement:  » & nomFichier & vbCrLf & objItem.Body objItem.Attachments.Remove (1) ‘suppression de la piece jointe objItem.Save    ‘enregistrer le message pour remettre à jour la collection d’attachement compteur = compteur – 1 Loop

Next

Set objItem = Nothing End Sub

Publicités

Exemple d’une macro outlook pour archiver simplement ses e-mails

En Mars 2007 Merlin Man proposait sur son site 43folders les grandes lignes de sa méthode de management des e-mails intitulée Inbox Zero.

Il s’agit d’une proposition de méthode pour une gestion efficace des e-mails. Inspirée de Getting Things Done (David Allen), l’idée de fond est que la boite de réception n’est qu’un espace de stockage temporaire qui doit vous permettre de décider comment un mail doit être traité. Un nombre limité d’actions peut lui être appliqué en fait:
# supprimer
# archiver
# répondre
# transformer en action
# déléguer une action
# différer dans le temps

J’ai commencé il y a peu à intégrer progressivement cette méthodologie dans mes modes de travail et pour simplifier l’action d’Archivage j’ai produit une macro outlook que je vous livre ici. Celle ci marque le(s) mail(s) sélectionnés comme lu(s) et le(s) archive dans un répertoire pré défini.

Répertoire cible
Vous pouvez modifier le répertoire d’archivage en changeant la valeur prise par la variable objFolder. Pour ce faire indiquez l’arborescence des répertoires qui désigne votre fichier d’archive en suivant le modèle ci dessous
objNS.Folders(« Dossiers personnels »).Folders(« sous dossier »).Folders(« Sous sous dossier »)

Exécution de la macro
Placez dans la barre d’outil un bouton exécutant la macro (A partir du menu : Affichage > Barre d’outil > Personnaliser, puis catégorie « Macro »)
Puis associez la macro à un raccourci clavier, pour cela dans la zone de nommage du bouton, le symbole « & » doit précéder la lettre qui servira de raccourci.
Ex: le nom « Inbox&Zero » précise que le raccourci Alt + z déclenchera l’exécution de la macro.

Opération à faire également sur la barre d’outils des messages (ouvrir un message et répéter les opérations précédentes)
Message toolbar screenshot

J’ai déjà identifié plusieurs façon d’améliorer cette macro, si certains d’entre vous souhaite participer je suis partant pour en faire un petit projet.


Référence
http://www.43folders.com/izero
http://video.google.com/videoplay?docid=973149761529535925