Kuidas iga sissetulev e-kiri automaatselt kõvakettale salvestada Outlook VBA kaudu

Kasutaja võib soovida e-kirju kõvakettale salvestada, et neid Outlookist sõltumatult vaadata või kellegagi jagada. Selles artiklis tutvustame, kuidas seda VBA kaudu automaatselt teha.

E-kirjade eksportimine Outlookist

Outlooki sõnumifailMitte iga Interneti-kasutaja ei kasuta Outlooki e-posti kliendina ja võib kasutada mõnda muud. Samuti võib tekkida olukord, kus meili tuleb kellegagi jagada, ilma tegelikku meili üle saatmata. Ka dokumenteerimise ja kontrolli eesmärgil esitatakse e-kirjad sageli tõenditena. Selliste stsenaariumide jaoks pakub Outlook meetodit meili eksportimiseks iseseisvalt msg- või html-failina. Järgmine VBA skript salvestab kõik sissetulevad meilid automaatselt kõvakettal eelnevalt määratud asukohta ilma kasutaja sekkumiseta html-vormingus. Pärast salvestamist saab e-kirja vaadata mis tahes Interneti-brauseris ilma meiliklienti kasutamata.

Outlooki VBA skript

Allpool on täielik Outlook VBA skript:

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

Kuidas skripti käivitada

press Alt + F11 , et avada Outlooki VBA redaktor ja kleepida ülaltoodud kood kausta „ThisOutlookSession“. Enne skripti käivitamist veenduge, et kaust „C:\MyEmails“ on olemas ja kasutajal on sellele kirjutamisõigus. Lisaks on oluline teada, et enne skripti käivitamist tuleks projekti viidete hulka lisada Microsoft Outlook XX objektiteek menüüst „Tööriistad“, kus XX on teegi versioon.

Mõistke skripti

Skriptis käivitatakse rutiin „Items_ItemAdd” iga postkasti saabuva üksuse puhul. Funktsioon „TypeName” on olemas selleks, et tagada rutiini jätkumine ainult siis, kui üksuseks on e-kiri, mitte muud tüüpi Outlooki objekt. Kui lohistate e-kirja mõnest teisest kaustast, näiteks „Saadetud”, postkasti, töötab rutiin ikkagi. Oluline on teada, et „Items_ItemAdd” käivitub ainult siis, kui e-kiri lisatakse postkasti peakausta. Kui postkasti peakaustas on pesastatud kaustu, siis kood ei tööta, kui e-kiri lisatakse mõnda neist. Selleks, et see töötaks ka teiste kaustade puhul, tuleks „Items_ItemAdd” ühendada selle konkreetse kaustaga rutiinis „Application_Startup”. Ülaltoodud skriptis saab olHTML-vormingu asendada olMSG-, olRTF-, olDoc- või olTxt-vorminguga. Iga salvestatava e-kirja nime vaikimisi vorming on „MinuE-post##”, kus ## on arv alates 1-st ja kasvades järk-järgult. Näiteks kaheteistkümnes sissetulev e-kiri pärast selle skripti käivitamist salvestatakse kujul „MinuE-post12”.

Andmete taastamine pärast Outlooki ebaõnnestumist

See ei ole väga haruldane stsenaarium, kus Outlook laguneb ja kasutajad kaotavad palju andmeid. Sellistest olukordadest taastumine võib olla väga raske ja aeganõudev ülesanne. Et oma elu sellistel juhtudel lihtsaks teha, võite kasutada Outlooki andmete taastamine tööriist tõhusaks ja veavabaks taastamiseks.

Autori sissejuhatus:

Mary Underwood on andmete taastamise ekspert DataNumen, Inc., mis on maailmas juhtiv andmete taastamise tehnoloogiate, sealhulgas dwg taastamine ja rar taastamistarkvara tooted. Lisateabe saamiseks külastage www.datanumenCom

Kommentaarid on suletud.