Imprimer par lots des pièces jointes PDF dans Outlook
Cet article a été écrit par Sean Tsai, expert en data warehousing et bon ami du How-To Geek.
Avez-vous déjà voulu imprimer chaque pièce jointe que vous recevez dans votre boîte de messagerie Outlook? Supposons que vous vous êtes abonné à un service gratuit de courrier électronique de télécopie au format PDF et que vous souhaitiez qu'il soit imprimé automatiquement, exactement comme un télécopieur traditionnel..
Voici un moyen rapide d’y parvenir si vous êtes à l’aise avec un peu de programmation VB (macro).
Ce que nous montrons ici est de créer une règle dans Outlook et de déplacer les courriels de télécopie entrants dans un sous-dossier distinct. En utilisant le code VB, nous créons une macro pour vous permettre d'exécuter un travail d'impression sur tous les courriers électroniques de ce sous-dossier. Vous n'avez ainsi pas à ouvrir le courrier électronique et à imprimer les pièces jointes une par une..
Étape 1
Créez un sous-dossier nommé "Impressions par lot" sous "Boîte aux lettres - Votre nom" dans Outlook..
Étape 2
Créez une règle (à partir du menu Outils / Règles et alertes) dans Outlook qui ressemble à ceci:
Placez l'adresse électronique de votre fournisseur de télécopie dans le champ «[email protected]». Dans la ligne d'objet, placez le texte persistant envoyé par le fournisseur de fax à chaque fois (n'entrez pas dans le texte qui sera modifié périodiquement). Le 3rd le champ “Batch Prints” est le sous-dossier que vous venez de créer à la première étape.
Étape 3
Créez une macro VB. Tout d'abord, ouvrez l'éditeur VB en allant dans Outils / Macro / Visual Basic Editor. Vous devriez voir que l'éditeur VB ressemble à ceci:
Étape 4
Dans la fenêtre de projet de gauche, cliquez avec le bouton droit de la souris sur l'élément Project1 et insérez un module nommé Module1:
Étape 5
Une fois le Module1 créé, copiez le code ci-dessous dans la fenêtre à droite, comme indiqué dans la puce # 3..
Public Sub PrintAttachments () Dim Inbox As MAPIFolder Elément Dim As MailItem Dim Atmt As Attachment Dim NomFichier En tant que String Dim i En tant qu'ensemble Inbox = GetNamespace ("MAPI"). GetDefaultFolder (olFolderInbox) .Parent.Folders.Item ("Batch Prints" ) Pour chaque élément de la boîte de réception. Objets pour chaque attribut de Toutes les pièces jointes de Item.Attachments sont d’abord enregistrées dans le dossier temporaire C: \ Temp. Assurez-vous de créer ce dossier. FileName = "C: \ Temp \" & Atmt.FileName Atmt.SaveAsFile FileName ', veuillez modifier le dossier du programme en conséquence si Acrobat Reader n'est pas installé sur le lecteur C: Shell "" "C: \ Program Files \ Adobe \ Reader 8.0 \ Reader \ acrord32.exe "" / h / p "" "+ Nom de fichier +" "" ", vbHide Next Item.Delete", supprimez cette ligne si vous ne souhaitez pas que le courrier électronique soit supprimé automatiquement. Suivant Set Inbox = Nothing End Sub
Notez que vous devrez peut-être modifier la ligne de code qui appelle Acrobat pour qu'elle corresponde au chemin d'accès sur votre système..
Étape 6
La configuration est maintenant terminée. Tous les courriels de votre fournisseur de fax seront déplacés vers vos «impressions par lot» dès leur arrivée. Veuillez noter que, dans l'exemple, nous nous attendons à ce que toutes les pièces jointes soient au format PDF, nous utilisons donc Acrobat acrord32.exe pour imprimer toutes les pièces jointes..
Utiliser la macro
Maintenant, lorsque vous souhaitez imprimer toutes les pièces jointes, accédez simplement à la macro et exécutez la macro PrintAttachments et toutes les pièces jointes seront imprimées de manière séquentielle. Le courrier électronique sera supprimé et placé dans la corbeille une fois imprimé.
Remarque: les impressions sont acheminées vers votre imprimante par défaut. Vous devez donc vous assurer qu'un pilote d'imprimante valide est configuré et sélectionné..
J'espère que cela est utile!