Ako hromadne tlačiť všetky prílohy vo viacerých e-mailoch pomocou programu Outlook VBA

Zdieľať teraz:

Ak chcete hromadne vytlačiť všetky prílohy vo viacerých vybratých e-mailoch, môžete použiť metódu uvedenú v tomto článku. Na jeho dosiahnutie v krátkom čase používa kúsok kódu VBA.

Ako vidíte, po výbere jednej prílohy je na páse s nástrojmi „Prílohy“ k dispozícii priama funkcia „Rýchla tlač“. Ak však vyberiete viac ako jednu prílohu, tlačidlo „Rýchla tlač“ bude deaktivované, nehovoriac o tom, že budete tlačiť všetky prílohy v mnohých vybratých e-mailoch. Preto, ak chcete hromadne vytlačiť všetky prílohy naraz vo viacerých e-mailoch, musíte hľadať iné spôsoby, napríklad akékoľvek nástroje tretích strán alebo VBA. Zameraní na túto potrebu vám tu vystavíme kúsok kódu VBA, ktorý vám pomôže získať ho jednoducho jedným kliknutím.

Dávková tlač všetkých príloh do viacerých e-mailov s programom Outlook VBA

Hromadná tlač všetkých príloh vo viacerých e-mailoch

  1. Hneď na začiatku spustite aplikáciu Outlook.
  2. Potom v hlavnom okne stlačte klávesovú skratku „Alt + F11“, aby ste sa dostali do editora VBA.
  3. V nasledujúcom okne „Microsoft Visual Basic for Applications“ otvorte prázdny modul.
  4. Ďalej skopírujte nasledujúce kódy VBA do takého modulu.
Sub BatchPrintAllAttachmentsinMultipleEmails()
    Dim objFileSystem As Object
    Dim strTempFolder As String
    Dim objSelection As Outlook.Selection
    Dim objItem As Object
    Dim objMail As Outlook.MailItem
    Dim objAttachments As Outlook.attachments
    Dim objAttachment As Outlook.Attachment
    Dim objShell As Object
    Dim objTempFolder As Object
    Dim objTempFolderItem As Object
    Dim strFilePath As String
 
    Set objFileSystem = CreateObject("Scripting.FileSystemObject")
    strTempFolder = objFileSystem.GetSpecialFolder(2).Path & "\Temp for Attachments " & Format(Now, "YYYY-MM-DD_hh-mm-ss")
    'Create a new temp folder
    MkDir (strTempFolder)
 
    Set objSelection = Outlook.Application.ActiveExplorer.Selection
 
    For Each objItem In objSelection
        If TypeOf objItem Is MailItem Then
           Set objMail = objItem
           Set objAttachments = objMail.attachments
 
           'Save all the attachments in the temp folder
           For Each objAttachment In objAttachments
               strFilePath = strTempFolder & "\" & objAttachment.FileName
               objAttachment.SaveAsFile (strFilePath)
 
               'Print all the files in the temp folder
               Set objShell = CreateObject("Shell.Application")
               Set objTempFolder = objShell.NameSpace(0)
               Set objTempFolderItem = objTempFolder.ParseName(strFilePath)
               objTempFolderItem.InvokeVerbEx ("print")
           Next objAttachment
        End If
    Next
End Sub

Kód VBA - tlačte všetky prílohy vo viacerých e-mailoch

  1. Následne môžete nové makro pridať na panel s nástrojmi Rýchly prístup.
  2. Potom by ste mali nastaviť nízku úroveň zabezpečenia makra programu Outlook.
  3. Nakoniec to môžete vyskúšať.
  • Najskôr v zozname e-mailov vyberte niekoľko e-mailov, ktorých prílohy chcete vytlačiť.
  • Potom kliknite na tlačidlo nového makra na paneli s nástrojmi Rýchly prístup.
  • Ďalej sa vytlačia všetky prílohy vo vybratých e-mailoch.

Pozor na vírusy skryté v makrách

Ak ste nakonfigurovali svoju úroveň zabezpečenia makier programu Outlook na nízku úroveň, musíte vynaložiť veľa úsilia na blokovanie potenciálnych vírusov v škodlivých makrách. Je to preto, že vírusy môžu zničiť vaše údaje programu Outlook naraz. Po poškodení údajov v Outlooku sa budete snažiť čo najlepšie obnoviť Outlook údaje vo všetkých ohľadoch, napríklad opakujúce sa na silný nástroj ako DataNumen Outlook Repair.

Úvod autora:

Shirley Zhang je expertkou na obnovu dát v DataNumen, Inc., ktorá je svetovým lídrom v oblasti technológií obnovy dát, vrátane skorumpovaný sql a výhľadové softvérové ​​produkty na opravu. Pre viac informácií navštívte www.datanumen. S

Zdieľať teraz:

Komentáre sú uzavreté.