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
Nu 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

Î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