Cum să salvați automat fiecare e-mail primit pe hard disk prin Outlook VBA

Distribuie acum:

Un utilizator ar putea dori să salveze e-mailuri pe hard disk pentru a le vizualiza independent de Outlook sau pentru a le partaja cu altcineva. În acest articol, vom prezenta cum să faceți acest lucru automat prin VBA.

Exportați e-mailuri din Outlook

Fișier mesaj OutlookNu toți utilizatorii de internet utilizează Outlook ca client de e-mail și este posibil să folosească unul alternativ. De asemenea, poate exista o situație în care un e-mail trebuie să fie partajat cu cineva, fără a trimite e-mailul propriu-zis. De asemenea, în scopuri de documentare și control, e-mailurile sunt adesea prezentate ca dovezi. Pentru astfel de scenarii, Outlook oferă o metodă de a exporta un e-mail independent ca fișier .msg sau .html. Următorul script VBA salvează automat fiecare e-mail primit într-o locație predefinită de pe hard disk fără intervenția utilizatorului în format html. Odată salvat, e-mailul poate fi vizualizat în orice browser de internet fără a fi nevoie de un client de e-mail.

Outlook VBA Script

Mai jos este scriptul complet Outlook VBA:

Private WithEvents Items As Outlook.Items

Private Count As Integer

Private Sub Application_Startup()
         Dim objApp As Outlook.Application
         Dim objNameSpace As Outlook.NameSpace   

         '        Get the items in the Inbox folder
         Set objApp = Outlook.Application
         Set objNameSpace = objApp.GetNamespace("MAPI")
         Set Items = objNameSpace.GetDefaultFolder(olFolderInbox).Items       
         '        Initialize count
         Count = 1
End Sub
 
Private Sub Items_ItemAdd(ByVal objItem As Object)
         On Error GoTo ShowError        

         Dim objMail As Outlook.MailItem     

         '        Check if the item is a mail. If yes, then save it as a HTML file and update Count
         If TypeName(objItem) = "MailItem" Then
                   Set objMail = objItem
                   objMail.SaveAs "C:\MyEmails\MyEmail" & CStr(Count), olHTML
                   Count = Count + 1
         End If      

         Exit Sub

ShowError:
         MsgBox Err.Number & " - " & Err.Description
End Sub

Cum să rulați scriptul

Anunturi Alt + F11 pentru a deschide editorul VBA Outlook și a lipi codul de mai sus în „ThisOutlookSession”. Înainte de a rula acest script, asigurați-vă că există folderul „C:\MyEmails” și că utilizatorul are permisiuni de scriere asupra acestuia. În plus, este important de știut că, înainte de a rula acest script, biblioteca de obiecte Microsoft Outlook XX trebuie adăugată la referințele proiectului din meniurile „Instrumente”, unde XX este versiunea bibliotecii.

Înțelegeți Scriptul

În script, rutina „Items_ItemAdd” va fi declanșată pentru fiecare element primit în folderul Inbox. Funcția „TypeName” este prezentă pentru a se asigura că rutina continuă numai dacă elementul este un e-mail și nu orice alt tip de obiect Outlook. Dacă trageți un e-mail din orice alt folder, de exemplu „Elemente trimise”, în inbox, rutina va funcționa în continuare. Este important să rețineți că „Items_ItemAdd” se va declanșa numai dacă un e-mail este adăugat în folderul principal Inbox. Dacă există foldere imbricate în folderul principal Inbox, codul nu va funcționa dacă un e-mail este adăugat în oricare dintre acestea. Pentru a funcționa pentru orice alte foldere, „Items_ItemAdd” trebuie conectat la folderul respectiv în rutina „Application_Startup”. În scriptul de mai sus, formatul olHTML poate fi înlocuit cu formatele olMSG, olRTF, olDoc sau olTxt. Formatul implicit de denumire pentru fiecare e-mail care va fi salvat este „E-mailulMeu##”, unde ## este numărătoarea începând de la 1 și crescând treptat. De exemplu, al doisprezecelea e-mail primit după rularea acestui script va fi salvat ca „E-mailulMeu12”.

Recuperarea datelor după eșecul Outlook

Nu este un scenariu foarte neobișnuit ca Outlook să se rupă și utilizatorii ajung să piardă o mulțime de date. Recuperarea din astfel de situații poate fi o sarcină foarte grea și consumatoare de timp. Pentru a vă ușura viața în astfel de cazuri, puteți utiliza un Recuperarea datelor Outlook instrument pentru o recuperare eficientă și fără erori.

Introducerea autorului:

Mary Underwood este expertă în recuperarea datelor DataNumen, Inc., care este lider mondial în tehnologiile de recuperare a datelor, inclusiv recuperare dwg și rar produse software de recuperare. Pentru mai multe informații vizitați www.datanumen.com

Distribuie acum:

Comentariile sunt închise.