Někdy můžete chtít hromadně exportovat složku Outlook se všemi podsložkami a položkami do složky Windows. Tento článek vás naučí takové metodě, která používá aplikaci Outlook VBA.
Pokud chcete exportovat složku aplikace Outlook na místní disk se všemi položkami ve stejné struktuře složek, pokud zvolíte ruční uložení a export, zabere vám to spoustu času. Proč se tedy uchýlit k jiným prostředkům, jako jsou exportní nástroje nebo kódy VBA? Zde vám takový kus kódu VBA odhalíme. Umožní vám to dosáhnout jako vánek.

Exportujte všechny podsložky a položky ve složce Outlook do složky Windows
- Hned na začátku spusťte program Outlook.
- Poté v hlavním okně aplikace Outlook stiskněte klávesovou zkratku „Alt + F11“.
- Následně se zobrazí okno „Microsoft Visual Basic for Applications“.
- Dále musíte otevřít prázdný modul a zkopírovat do něj následující kódy VBA.
Private objFileSystem As Object
Private Sub ExportFolderWithAllItems()
Dim objFolder As Outlook.Folder
Dim strPath As String
'Specify the root local folder
'Change it as per your needs
strPath = "E:\Outlook\"
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
'Select a Outlook PST file or Outlook folder
Set objFolder = Outlook.Application.Session.PickFolder
Call ProcessFolders(objFolder, strPath)
MsgBox "Complete", vbExclamation
End Sub
Private Sub ProcessFolders(objCurrentFolder As Outlook.Folder, strCurrentPath As String)
Dim objItem As Object
Dim strSubject, strFileName, strFilePath As String
Dim objSubfolder As Outlook.Folder
'Create the local folder based on the Outlook folder
strCurrentPath = strCurrentPath & objCurrentFolder.Name
objFileSystem.CreateFolder strCurrentPath
For Each objItem In objCurrentFolder.Items
strSubject = objItem.Subject
'Remove unsupported characters in the subject
strSubject = Replace(strSubject, "/", " ")
strSubject = Replace(strSubject, "\", " ")
strSubject = Replace(strSubject, ":", "")
strSubject = Replace(strSubject, "?", " ")
strSubject = Replace(strSubject, Chr(34), " ")
strFileName = strSubject & ".msg"
i = 0
Do Until False
strFilePath = strCurrentPath & "\" & strFileName
'Check if there exist a file in the same name
If objFileSystem.FileExists(strFilePath) Then
'Add a sequence order to the file name
i = i + 1
strFileName = strSubject & " (" & i & ").msg"
Else
Exit Do
End If
Loop
'Save as MSG file
objItem.SaveAs strFilePath, olMSG
Next
'Process subfolders recursively
If objCurrentFolder.folders.Count > 0 Then
For Each objSubfolder In objCurrentFolder.folders
Call ProcessFolders(objSubfolder, strCurrentPath & "\")
Next
End If
End Sub
- Poté musíte zajistit, aby váš Outlook povolil makra v nastavení maker.
- Nakonec to můžete vyzkoušet.
- Nejprve zpět do nového okna makra.
- Dále klikněte na podprogram „ExportFolderWithAllItems“.
- Poté stisknutím klávesy F5 spusťte toto makro.
- Poté musíte vybrat konkrétní složku.
- Nakonec, když se zobrazí zpráva „Complete“, máte přístup k předdefinované místní složce. Zjistíte, že všechny položky byly uloženy ve stejné struktuře složek.
Zabraňte ztrátě dat při selhání aplikace Outlook
Možná jste se někdy setkali s mnoha pády Outlooku. Většinou po restartu Outlook funguje normálně. Existuje však také možnost, že se váš soubor PST poškodí. V takovém případě se pokuste co nejlépe obnovit data PST, například pomocí zkušeného nástroje, jako je DataNumen Outlook Repair. Je schopen opravit Outlook chyby a extrahovat data z napadeného souboru PST, aniž byste se zapotili.
Úvod autora:
Shirley Zhang je expertem na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně SQL Server opravit a výhledové softwarové produkty pro opravy. Pro více informací navštivte www.datanumen.com


