Skip to main content

Kutools per Office — Una Suite. Cinque Strumenti. Ottieni di Più.

Come esportare email da più cartelle/sottocartelle in Excel in Outlook?

Author Kelly Last modified

Esportare email da più cartelle o sottocartelle in Excel può essere un compito tedioso se si utilizzano metodi manuali o funzionalità limitate di Outlook. Fortunatamente, ci sono modi più efficienti per raggiungere questo obiettivo. In questo articolo, esploreremo due metodi: un approccio basato su VBA e una soluzione più veloce e user-friendly con Kutools per Outlook. Mentre il metodo VBA offre flessibilità, richiede una configurazione complessa e aggiustamenti. Al contrario, Kutools per Outlook fornisce un modo semplice e potente per esportare email in Excel con pochi clic, risparmiando tempo ed energia. Entriamo nei dettagli.

Esporta Email da Più Cartelle/Sottocartelle in Excel Utilizzando VBA (Complesso ma Flessibile)

Esporta Email da una Cartella/Sottocartella in Excel Utilizzando Kutools per Outlook 👍 (Efficiente e Facile da Usare)


Esporta Email da Più Cartelle/Sottocartelle in Excel Utilizzando VBA

Se sei a tuo agio con la programmazione e hai bisogno di una soluzione personalizzabile, utilizzare VBA può essere efficace. Questo metodo ti consente di specificare più cartelle o sottocartelle ed esportarne le email in file Excel separati. Tuttavia, richiede conoscenze tecniche e una personalizzazione attenta del codice.

Passo 1: Apri l'Editor VBA

Premi Alt + F11 per aprire la finestra "Microsoft Visual Basic for Applications".

Passo 2: Inserisci un Nuovo Modulo

Clicca su "Inserisci" > "Modulo", quindi incolla il seguente codice VBA nella nuova finestra del Modulo.

VBA: Esporta email da più cartelle e sottocartelle in Excel

Const MACRO_NAME = "Export Outlook Folders to Excel"
Sub ExportMain()
ExportToExcel "destination_folder_path\A.xlsx", "your_email_account\folder\subfolder_1"
ExportToExcel "destination_folder_path\B.xlsx", "your_email_account\folder\subfolder_2"
MsgBox "Process complete.", vbInformation + vbOKOnly, MACRO_NAME
End Sub

Sub ExportToExcel(strFilename As String, strFolderPath As String)
Dim olkMsg As Object
Dim olkFld As Object
Dim excApp As Object
Dim excWkb As Object
Dim excWks As Object
Dim intRow As Integer
Dim intVersion As Integer

If strFilename <> "" Then
If strFolderPath <> "" Then
Set olkFld = OpenOutlookFolder(strFolderPath)
If TypeName(olkFld) <> "Nothing" Then
intVersion = GetOutlookVersion()
Set excApp = CreateObject("Excel.Application")
Set excWkb = excApp.Workbooks.Add()
Set excWks = excWkb.ActiveSheet
With excWks
.Cells(1, 1) = "Subject"
.Cells(1, 2) = "Received"
.Cells(1, 3) = "Sender"
End With
intRow = 2
For Each olkMsg In olkFld.Items
If olkMsg.Class = olMail Then
excWks.Cells(intRow, 1) = olkMsg.Subject
excWks.Cells(intRow, 2) = olkMsg.ReceivedTime
excWks.Cells(intRow, 3) = GetSMTPAddress(olkMsg, intVersion)
intRow = intRow + 1
End If
Next
Set olkMsg = Nothing
excWkb.SaveAs strFilename
excWkb.Close
Else
MsgBox "The folder '" & strFolderPath & "' does not exist in Outlook.", vbCritical + vbOKOnly, MACRO_NAME
End If
Else
MsgBox "The folder path was empty.", vbCritical + vbOKOnly, MACRO_NAME
End If
Else
MsgBox "The filename was empty.", vbCritical + vbOKOnly, MACRO_NAME
End If

Set olkMsg = Nothing
Set olkFld = Nothing
Set excWks = Nothing
Set excWkb = Nothing
Set excApp = Nothing
End Sub

Public Function OpenOutlookFolder(strFolderPath As String) As Outlook.MAPIFolder
Dim arrFolders As Variant
Dim varFolder As Variant
Dim bolBeyondRoot As Boolean

On Error Resume Next
If strFolderPath = "" Then
Set OpenOutlookFolder = Nothing
Else
Do While Left(strFolderPath, 1) = "\"
strFolderPath = Right(strFolderPath, Len(strFolderPath) - 1)
Loop
arrFolders = Split(strFolderPath, "\")
For Each varFolder In arrFolders
Select Case bolBeyondRoot
Case False
Set OpenOutlookFolder = Outlook.Session.Folders(varFolder)
bolBeyondRoot = True
Case True
Set OpenOutlookFolder = OpenOutlookFolder.Folders(varFolder)
End Select
If Err.Number <> 0 Then
Set OpenOutlookFolder = Nothing
Exit For
End If
Next
End If
On Error GoTo 0
End Function

Function GetSMTPAddress(Item As Outlook.MailItem, intOutlookVersion As Integer) As String
Dim olkSnd As Outlook.AddressEntry
Dim olkEnt As Object

On Error Resume Next
Select Case intOutlookVersion
Case Is < 14
If Item.SenderEmailType = "EX" Then
GetSMTPAddress = SMTPEX(Item)
Else
GetSMTPAddress = Item.SenderEmailAddress
End If
Case Else
Set olkSnd = Item.Sender
If olkSnd.AddressEntryUserType = olExchangeUserAddressEntry Then
Set olkEnt = olkSnd.GetExchangeUser
GetSMTPAddress = olkEnt.PrimarySmtpAddress
Else
GetSMTPAddress = Item.SenderEmailAddress
End If
End Select
On Error GoTo 0
Set olkSnd = Nothing
Set olkEnt = Nothing
End Function

Function GetOutlookVersion() As Integer
Dim arrVer As Variant
arrVer = Split(Outlook.Version, ".")
GetOutlookVersion = arrVer(0)
End Function

Function SMTPEX(olkMsg As Outlook.MailItem) As String
Dim olkPA As Outlook.propertyAccessor
On Error Resume Next
Set olkPA = olkMsg.propertyAccessor
SMTPEX = olkPA.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x5D01001E")
On Error GoTo 0
Set olkPA = Nothing
End Function

Passo 3: Personalizza il Codice VBA

  1. Sostituisci "destination_folder_path" nel codice sopra con il percorso della cartella effettivo, come ad esempio "C:\Users\DT168\Documents\TEST".
  2. Sostituisci "your_email_account\cartella\sottocartella_1" e "your_email_account\cartella\sottocartella_2" con i percorsi delle tue cartelle di Outlook, come ad esempio "Kelly@extendoffice.com\Posta in arrivo\A" e "Kelly@extendoffice.com\Posta in arrivo\B".
    doc-export-subfolders-to-excel-1

Passo 4: Esegui il Codice

Premi "F5" oppure clicca sul pulsante "Esegui" per avviare il codice. Poi clicca sul pulsante "OK" nella finestra di dialogo "Esporta Cartelle di Outlook in Excel" che appare. Ora le email da tutte le cartelle/sottocartelle specificate sono state esportate in cartelle di lavoro Excel.
doc-export-subfolders-to-excel-3

Svantaggi:

  • Configurazione Complessa: Richiede aggiustamenti accurati del codice e una conoscenza funzionante di VBA.
  • Prone agli Errori: Piccoli errori nella personalizzazione possono portare a errori o esportazioni incomplete.
  • Dispendioso in Tempo: Non adatto per esportazioni rapide o frequenti.

Trasforma la Gestione delle tue Email con Elaborazione in Massa!

Stanco di compiti ripetitivi con le email? Kutools per Outlook offre strumenti di "Elaborazione in Massa" per semplificare il tuo flusso di lavoro e risparmiare tempo prezioso.

  • 🌟 Rispondi a Più Email: Invia risposte in massa utilizzando modelli senza alcuno sforzo.
  • 📧 Inoltra Individualmente: Inoltra più email come messaggi regolari, non come allegati.
  • 📝 Salva in Diversi Format: Esporta email come PDF, Word, Excel e altro - tutto in una volta sola!
Kutools for Outlook Bulk Processing Feature

Prova Kutools per Outlook Oggi


Esporta Email da una Cartella/Sottocartella in Excel Utilizzando Kutools per Outlook 👍

Per un approccio più veloce e privo di complicazioni, "Kutools per Outlook" offre una funzione "Salva Email Selezionate come File in Diversi Formati". Questo metodo è altamente raccomandato per la sua semplicità, velocità e versatilità. Che tu stia gestendo un piccolo lotto di email o grandi dataset, Kutools garantisce un'esperienza fluida con il minimo sforzo.

Dite addio all'inefficienza di Outlook! Kutools per Outlook rende più facile l'elaborazione di email in batch - ora con funzionalità AI gratuite! Scarica Kutools per Outlook Ora!!

Passo 1: Seleziona la Cartella o Sottocartella

Naviga verso la cartella o sottocartella contenente le email che desideri esportare. Premi Ctrl + A per selezionare tutte le email nell'elenco.

Passo 2: Accedi alla Funzione Salva Email Selezionate come File in Diversi Formati

Clicca su "Kutools" > "Elaborazione in Massa" > "Salva Email Selezionate come File in Diversi Formati".

doc-export-subfolders-to-excel-4

Passo 3: Configura le Impostazioni di Esportazione

  1. Nella finestra di dialogo "Salva Messaggi come Altri File", scegli la cartella di destinazione dove vuoi salvare i file.
  2. Seleziona l'opzione "Formato Excel".
  3. Scegli i contenuti specifici delle email da esportare (ad esempio, intestazione, corpo) nella sezione "Contenuto da Salvare".
    doc-export-subfolders-to-excel-5

Passo 4: Completa l'Esportazione

Clicca su "OK" per avviare il processo di esportazione. Una volta completato, troverai tutte le email salvate come file Excel separati nella cartella designata.

doc-export-subfolders-to-excel-6

Vantaggi:

  • Veloce e Intuitivo: Esporta email in Excel con pochi clic - nessuna competenza tecnica richiesta.
  • Output Personalizzabile: Scegli formati di file specifici e contenuti per soddisfare le tue esigenze.
  • Processo Privo di Errori: Evita le complessità e gli errori potenziali associati ai metodi VBA.
  • Risultati Professionali: Perfetto per creare registri organizzati o condividere dati in modo efficiente.
Nota: Per applicare l'utilità "Salva Email Selezionate come File in Diversi Formati" di Kutools per Outlook, prima devi scaricare e installare Kutools per Outlook.

I migliori strumenti per la produttività in Office

Ultime notizie: Kutools per Outlook lancia la versione gratuita!

Scopri il nuovissimo Kutools per Outlook con oltre100 funzionalità straordinarie! Clicca per scaricare ora!

🤖 Kutools AI : Utilizza una tecnologia AI avanzata per gestire le email senza sforzo, inclusa la risposta, la sintesi, l’ottimizzazione, l’estensione, la traduzione e la composizione dei messaggi.

📧 Automazione Email: Risposta automatica (disponibile per POP e IMAP)  /  Programma invio Email  /  CC/BCC automatico tramite Regola durante l’invio delle Email  /  Inoltro automatico (Regola avanzata)   /  Aggiungi Saluto automaticamente   /  Dividi automaticamente Email multi-destinatario in messaggi singoli ...

📨 Gestione Email: Richiama Email  /  Blocca Email fraudulent (tramite Oggetto e altri parametri)  /  Elimina Email Duplicato  /  Ricerca Avanzata  /  Organizza cartelle ...

📁 Allegati ProSalva in Batch  /  Distacca in Batch  /  Comprimi in Batch  /  Salvataggio automatico   /  Distacca automaticamente  /  Auto Comprimi ...

🌟 Magia Interfaccia: 😊Più emoji belle e divertenti   /  Notifiche per le email importanti in arrivo  /  Riduci Outlook al posto di chiuderlo ...

👍 Funzioni rapide: Rispondi a Tutti con Allegati  /  Email Anti-Phishing  /  🕘Mostra il fuso orario del mittente ...

👩🏼‍🤝‍👩🏻 Contatti & Calendario: Aggiungi in Batch contatti dalle Email selezionate  /  Dividi un Gruppo di Contatti in Gruppi singoli  /  Rimuovi promemoria di compleanno ...

Utilizza Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre!

Sblocca Kutools per Outlook istantaneamente con un solo clic. Non aspettare, scarica ora e aumenta la tua efficienza!

kutools for outlook features1 kutools for outlook features2

🚀 Download con un solo clic — Ottieni tutti gli Add-in per Office

Consigliato: Kutools per Office (5-in-1)

Un solo clic per scaricare cinque installatori contemporaneamente — Kutools per Excel, Outlook, Word, PowerPoint e Office Tab Pro. Clicca per scaricare ora!

  • Comodità con un solo clic: scarica tutti e cinque i pacchetti di installazione in una sola azione.
  • 🚀 Pronto per qualsiasi attività Office: installa i componenti aggiuntivi necessari, quando ti servono.
  • 🧰 Inclusi: Kutools per Excel / Kutools per Outlook / Kutools per Word / Office Tab Pro / Kutools per PowerPoint