Hoe u elke inkomende e-mail automatisch op de harde schijf kunt opslaan via Outlook VBA

Een gebruiker wil misschien e-mails op de harde schijf opslaan om ze onafhankelijk van Outlook te bekijken of om met iemand anders te delen. In dit artikel laten we zien hoe je dat automatisch kunt doen via VBA.

E-mails exporteren vanuit Outlook

Outlook-berichtbestandNiet elke internetgebruiker gebruikt Outlook als e-mailclient en gebruikt mogelijk een alternatieve. Er kan zich ook een situatie voordoen waarin een e-mail met iemand moet worden gedeeld, zonder de daadwerkelijke e-mail te verzenden. Ook voor documentatie- en controledoeleinden worden e-mails vaak als bewijs gepresenteerd. Voor dergelijke scenario's biedt Outlook een methode om een ​​e-mail zelfstandig als .msg- of .html-bestand te exporteren. Het volgende VBA-script slaat elke inkomende e-mail automatisch op naar een vooraf gedefinieerde locatie op de harde schijf zonder tussenkomst van de gebruiker in html-formaat. Eenmaal opgeslagen, kan de e-mail in elke internetbrowser worden bekeken zonder dat een e-mailclient nodig is.

Outlook VBA-script

Hieronder vindt u het volledige Outlook VBA-script:

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

Hoe het script uit te voeren

Druk op Alt + F11 Open de Outlook VBA-editor en plak de bovenstaande code in “ThisOutlookSession”. Controleer voordat u dit script uitvoert of de map “C:\MyEmails” bestaat en of de gebruiker schrijfrechten heeft. Het is bovendien belangrijk om te weten dat voordat u dit script uitvoert, de Microsoft Outlook XX-objectbibliotheek moet worden toegevoegd aan de projectverwijzingen via het menu “Extra”, waarbij XX het bibliotheekversienummer is.

Begrijp het script

In het script wordt de routine "Items_ItemAdd" geactiveerd voor elk item dat binnenkomt in de map Postvak IN. De functie "TypeName" zorgt ervoor dat de routine alleen wordt uitgevoerd als het item een ​​e-mail is en geen ander type Outlook-object. Als u een e-mail vanuit een andere map, bijvoorbeeld "Verzonden items", naar Postvak IN sleept, werkt de routine nog steeds. Het is belangrijk om te weten dat "Items_ItemAdd" alleen wordt geactiveerd als een e-mail wordt toegevoegd aan de hoofdmap Postvak IN. Als er geneste mappen in de hoofdmap Postvak IN zitten, werkt de code niet als er een e-mail aan een van die mappen wordt toegevoegd. Om de routine ook voor andere mappen te laten werken, moet "Items_ItemAdd" in de routine "Application_Startup" aan die specifieke map worden gekoppeld. In het bovenstaande script kan het olHTML-formaat worden vervangen door olMSG, olRTF, olDoc of olTxt. De standaardnaamgeving voor elke op te slaan e-mail is "MyEmail##", waarbij ## het nummer is, beginnend bij 1 en oplopend. De twaalfde inkomende e-mail na het uitvoeren van dit script wordt bijvoorbeeld opgeslagen als "MyEmail12".

Gegevensherstel na Outlook-fout

Het is geen ongebruikelijk scenario dat Outlook uitvalt en gebruikers uiteindelijk veel gegevens verliezen. Herstellen van dergelijke situaties kan een zeer zware en tijdrovende taak zijn. Om uw leven in dergelijke gevallen gemakkelijker te maken, kunt u een Outlook-gegevensherstel tool voor een efficiënt en bugvrij herstel.

Auteur Introductie:

Mary Underwood is een expert op het gebied van gegevensherstel in DataNumen, Inc., de wereldleider in technologieën voor gegevensherstel, waaronder dwg-herstel en rar herstelsoftwareproducten. Voor meer informatie bezoek www.datanumen.com

Reacties zijn gesloten.