Użytkownik może chcieć zapisywać wiadomości e-mail na dysku twardym, aby wyświetlać je niezależnie od programu Outlook lub udostępniać komuś innemu. W tym artykule przedstawimy, jak to zrobić automatycznie przez VBA.
Eksportuj wiadomości e-mail z programu Outlook
Nie każdy użytkownik internetu używa Outlooka jako klienta poczty e-mail i może używać alternatywnego. Może również wystąpić sytuacja, w której wiadomość e-mail musi zostać komuś udostępniona, bez wysyłania samej wiadomości e-mail. Również w celach dokumentacyjnych i kontrolnych e-maile są często przedstawiane jako dowód. W takich scenariuszach program Outlook oferuje metodę niezależnego eksportowania wiadomości e-mail jako pliku .msg lub .html. Poniższy skrypt VBA automatycznie zapisuje każdą przychodzącą wiadomość e-mail we wstępnie zdefiniowanej lokalizacji na dysku twardym bez interwencji użytkownika w formacie html. Po zapisaniu wiadomość e-mail można przeglądać w dowolnej przeglądarce internetowej bez potrzeby korzystania z klienta poczty e-mail.
Skrypt VBA programu Outlook
Poniżej znajduje się pełny skrypt VBA programu Outlook:
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
Jak uruchomić skrypt

Zrozum skrypt
W skrypcie procedura „Items_ItemAdd” będzie uruchamiana przy każdym elemencie przychodzącym do folderu Skrzynka odbiorcza. Funkcja „TypeName” zapewnia ponadto, że procedura jest kontynuowana tylko wtedy, gdy element jest wiadomością e-mail, a nie innymi typami obiektów programu Outlook. Jeśli przeciągniesz wiadomość e-mail z dowolnego innego folderu i powiesz „Elementy wysłane” do skrzynki odbiorczej, procedura nadal będzie działać i wykonywać swoje zadanie. Ważne jest, aby mieć świadomość, że „Items_ItemAdd” uruchomi się tylko wtedy, gdy wiadomość e-mail zostanie dodana do głównego folderu Skrzynki odbiorczej. Jeśli w głównym folderze skrzynki odbiorczej znajdują się zagnieżdżone foldery, kod nie zadziała, jeśli do któregokolwiek z nich zostanie dodana wiadomość e-mail. Aby działało z innymi folderami, „Items_ItemAdd” należy podłączyć do tego konkretnego folderu w „Application_Startup ”. W powyższym skrypcie format olHTML można zastąpić formatami olMSG, olRTF, olDoc lub olTxt. Domyślny format nazewnictwa każdej zapisywanej wiadomości e-mail to „MyEmail ##”, gdzie ## to liczbatarting od 1 i narastająco w górę. Na przykład dwunasta wiadomość e-mail przychodząca po uruchomieniu tego skryptu zostanie zapisana jako „MyEmail12”.
Odzyskiwanie danych po awarii programu Outlook
Nierzadko zdarza się, że Outlook rozpada się, a użytkownicy tracą dużo danych. Wychodzenie z takich sytuacji może być bardzo trudnym i czasochłonnym zadaniem. Aby ułatwić sobie życie w takich przypadkach, możesz użyć pliku Odzyskiwanie danych programu Outlook narzędzie do wydajnego i wolnego od błędów odzyskiwania.
Wprowadzenie autora:
Mary Underwood jest ekspertem w dziedzinie odzyskiwania danych DataNumen, Inc., która jest światowym liderem w technologiach odzyskiwania danych, w tym dwg regeneracja i rar oprogramowanie do odzyskiwania. po więcej informacji odwiedź www.datanumen.com