Kako samodejno shraniti vsako dohodno e-pošto na trdi disk prek Outlooka VBA

Skupna raba zdaj:

Uporabnik bo morda želel shraniti e-poštna sporočila na trdi disk, da si jih bo ogledal neodvisno od Outlooka ali da jih bo delil z nekom drugim. V tem članku bomo predstavili, kako to storiti samodejno prek VBA.

Izvoz e-pošte iz Outlooka

Outlookova sporočilna datotekaVsak uporabnik interneta ne uporablja Outlooka kot e-poštnega odjemalca in morda uporablja drugega. Lahko pride tudi do situacije, ko je treba e-pošto deliti z nekom, ne da bi poslali po dejanski e-pošti. E-poštna sporočila so pogosto predstavljena kot dokaz tudi za namene dokumentacije in pregleda. Za takšne scenarije Outlook ponuja metodo za samostojen izvoz e-pošte kot datoteke .msg ali .html. Naslednji skript VBA samodejno shrani vsako dohodno e-pošto na vnaprej določeno mesto na trdem disku brez posredovanja uporabnika v formatu html. Ko je e-poštno sporočilo shranjeno, si ga lahko ogledate v katerem koli internetnem brskalniku, ne da bi potrebovali e-poštni odjemalec.

Outlook VBA skript

Spodaj je celoten skript 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

Kako zagnati skript

Pritisnite Alt + F11 Odprite urejevalnik VBA za Outlook in prilepite zgornjo kodo v »ThisOutlookSession«. Preden zaženete ta skript, se prepričajte, da mapa »C:\MyEmails« obstaja in da ima uporabnik dovoljenje za pisanje vanjo. Poleg tega je pomembno vedeti, da je treba pred zagonom tega skripta v reference projektov iz menijev »Orodja« dodati knjižnico objektov Microsoft Outlook XX, kjer je XX različica knjižnice.

Razumeti scenarij

V skriptu se bo rutina »Items_ItemAdd« sprožila za vsak dohodni element v mapi »Prejeto«. Funkcija »TypeName« je namenjena nadaljnjemu zagotavljanju, da se rutina nadaljuje le, če je element e-pošta in ne nobena druga vrsta Outlookovih objektov. Če e-pošto povlečete iz katere koli druge mape, na primer »Poslano«, v mapo »Prejeto«, bo rutina še vedno delovala in opravila svoje delo. Pomembno se je zavedati, da se bo »Items_ItemAdd« sprožila le, če je e-pošta dodana v glavno mapo »Prejeto«. Če so v glavni mapi »Prejeto« vgnezdene mape, koda ne bo delovala, če je e-pošta dodana v katero koli od njih. Da bi delovala za katero koli drugo mapo, je treba »Items_ItemAdd« povezati s to določeno mapo v rutini »Application_Startup«. V zgornjem skriptu lahko format olHTML nadomestimo s formati olMSG, olRTF, olDoc ali olTxt. Privzeta oblika poimenovanja za vsako shranjeno e-pošto je »MojE-Pošt##«, kjer je ## število, ki se začne od 1 in se postopoma povečuje. Na primer, dvanajsta prejeta e-pošta po zagonu tega skripta bo shranjena kot »MojE-Pošt12«.

Obnovitev podatkov po okvari Outlooka

Ni zelo nenavaden scenarij, da Outlook pokvari in uporabniki na koncu izgubijo veliko podatkov. Okrevanje po takih situacijah je lahko zelo težka in dolgotrajna naloga. Da si olajšate življenje v takih primerih, lahko uporabite Obnovitev podatkov Outlook orodje za učinkovito obnovitev brez napak.

Uvod avtorja:

Mary Underwood je strokovnjakinja za obnovitev podatkov v DataNumen, Inc., ki je vodilna na svetu na področju tehnologij za obnovitev podatkov, vključno z obnovitev DWG in rar obnovitveni programski izdelki. Za več informacij obiščite www.datanumen.com

Skupna raba zdaj:

Komentarji so zaprti.