A volte, potresti voler esportare in batch una cartella di Outlook con tutte le sottocartelle e gli elementi in una cartella di Windows. Questo articolo ti insegnerà un tale metodo che sta applicando Outlook VBA.
Quando desideri esportare una cartella di Outlook su un'unità locale con tutti gli elementi nella stessa struttura di cartelle, se scegli di salvare ed esportare manualmente, ci vorrà molto tempo. Quindi, perché non ricorrere ad altri mezzi, come strumenti di esportazione o codici VBA? Qui ti sveleremo un tale pezzo di codice VBA. Ti permetterà di raggiungerlo come un gioco da ragazzi.

Esporta tutte le sottocartelle e gli elementi in una cartella di Outlook in una cartella di Windows
- All'inizio, start il tuo programma Outlook.
- Quindi, nella finestra principale di Outlook, premi le scorciatoie da tastiera "Alt + F11".
- Successivamente, verrà visualizzata la finestra "Microsoft Visual Basic for Applications".
- Successivamente è necessario aprire un modulo vuoto e copiarvi i seguenti codici 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
- Dopodiché, devi assicurarti che Outlook consenta i macro nelle impostazioni macro.
- Alla fine, puoi provare.
- In primo luogo, torniamo alla nuova finestra macro.
- Quindi fai clic sulla subroutine "Esporta cartella con tutti gli elementi".
- Quindi premere il tasto F5 per eseguire questa macro.
- Successivamente, è necessario selezionare una cartella specifica.
- Infine, quando ricevi un messaggio che dice "Completato", puoi accedere alla cartella locale predefinita. Troverai che tutti gli elementi sono stati salvati nella stessa struttura di cartelle.
Prevenire la perdita di dati da arresti anomali di Outlook
Forse hai mai riscontrato molti arresti anomali di Outlook. Most di tempo, dopo una ristart, Outlook sarà in grado di funzionare normalmente. Tuttavia, c'è anche un caso in cui il nostro file PST potrebbe essere danneggiato. A quel punto, farai del tuo meglio per recuperare i tuoi dati PST, ad esempio ricorrendo a uno strumento esperto come DataNumen Outlook Repair. È in grado di riparare Outlook errori ed estrai i dati dal file PST compromesso senza sudare.
Introduzione dell'autore:
Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui SQL Server riparazione e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com


