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

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