Esporti da Outlook un account Gmail IMAP in un file PST e, una volta aperto, le cartelle risultano “vuote”? Non è corruzione: i messaggi sono presenti ma nascosti da una vista. In questa guida spiego come verificarlo, risolvere subito senza codice e applicare una correzione permanente via VBA.
Perché il PST di Gmail (IMAP) sembra vuoto dopo l’esportazione
Quando un account Gmail è configurato in Outlook tramite IMAP, ogni cartella eredita un tipo di cartella e una vista specifica per IMAP. Durante l’esportazione verso un nuovo file .pst (File di dati di Outlook), Outlook:
- conserva la struttura di cartelle e sottocartelle;
- copie i messaggi e gli allegati (infatti il PST pesa decine o centinaia di MB);
- imposta la vista predefinita “Nascondi messaggi contrassegnati per l’eliminazione” tipica di IMAP.
Risultato: aprendo il PST, i messaggi ci sono ma non vengono visualizzati. Questo fa pensare, erroneamente, a un’esportazione fallita o a un archivio danneggiato.
Segnali che confermano che i messaggi ci sono
Prima di intervenire, fai tre verifiche rapide.
| Passo | Cosa controllare | Indicazione |
|---|---|---|
| Dimensione del PST | Proprietà del file in Esplora File | Se > 0 (decine o centinaia di MB), i messaggi sono presenti. |
| Ricerca in Outlook | Usa “Cerca nelle cartelle correnti” | Se trovi risultati, si tratta di un problema di vista, non di contenuti mancanti. |
| Tipo account sorgente | File → Impostazioni account | Se era IMAP, il comportamento è quello descritto. |
Soluzioni rapide (senza codice)
Se devi solo leggere il PST o metterlo a disposizione, la correzione più veloce è applicare una vista diversa.
Metodo A: cambia vista sulla cartella corrente
- Apri il PST in Outlook (File → Apri e esporta → Apri file di dati di Outlook).
- Seleziona una cartella che appare vuota.
- Vai su Visualizza → Cambia visualizzazione e scegli Messaggi IMAP oppure Compatta (in alcune edizioni “Compact/Compact View”).
- I messaggi diventano immediatamente visibili.
Metodo B: applica la vista a più cartelle in un colpo solo
- Seleziona la cartella radice del PST o una cartella principale.
- Vai su Visualizza → Cambia visualizzazione → Gestisci visualizzazioni….
- Scegli la vista Messaggi IMAP (o Compatta) e clicca Applica.
- Quando Outlook chiede “Applica a”, scegli Cartella corrente e tutte le sottocartelle.
- Chiudi e riapri Outlook per verificare che la vista resti coerente.
Questi metodi non alterano i dati: cambiano solo il modo in cui Outlook li mostra.
Soluzione permanente e scalabile (con VBA)
Se devi:
— correggere molte cartelle;
— distribuire il PST ad altri utenti (che potrebbero rivedere il problema);
— evitare ogni ricaduta,
ti conviene applicare uno script VBA ispirato alla ben nota procedura “Change Folder Type” (Slipstick). Lo script fa tre cose:
- Converte il tipo di cartella da IMAP (
IPF.IMAP) a Posta (IPF.Note), ovvero il tipo standard utilizzato dalle normali cartelle email nei PST. - Imposta in automatico una vista compatibile (Messaggi/Messaggi IMAP/Compatta) evitando i filtri che nascondono i messaggi contrassegnati per l’eliminazione.
- Applica il cambiamento in modo ricorsivo a tutte le sottocartelle del punto di partenza.
Prima di iniziare: prerequisiti e sicurezza
- Outlook per Windows con supporto alle macro abilitato (puoi disattivare dopo l’operazione).
- Esegui un backup del PST (chiudi Outlook e copia fisicamente il file .pst).
- Se la policy aziendale limita le macro, esegui la procedura su una macchina di laboratorio o chiedi al reparto IT.
Come usare lo script (passo passo)
- Apri Outlook e seleziona nella barra a sinistra la cartella radice del PST che vuoi correggere (clic sul nome dell’archivio).
- Premi ALT+F11 per aprire l’Editor di Visual Basic.
- Vai su Inserisci → Modulo e incolla il codice qui sotto.
- Chiudi l’editor e torna a Outlook.
- Premi ALT+F8, seleziona la macro FixPstImapViews e fai clic su Esegui.
- Attendi il completamento (su PST grandi, la ricorsione può richiedere qualche minuto).
Script VBA completo
' ===========================================
' Corregge PST "vuoti" dopo esportazione IMAP
' - Converte IPF.IMAP in IPF.Note
' - Applica una vista compatibile
' - Ricorsivo su tutte le sottocartelle
' Autore: <inserisci nome o reparto>
' ===========================================
Option Explicit
' DASL di PRCONTAINERCLASS
Private Const PRCONTAINERCLASS As String = _
"[http://schemas.microsoft.com/mapi/proptag/0x3613001E](http://schemas.microsoft.com/mapi/proptag/0x3613001E)"
Public Sub FixPstImapViews()
Dim root As Outlook.Folder
```
' Usa la cartella attiva come radice operativa
If Application.ActiveExplorer Is Nothing Then
MsgBox "Apri Outlook e seleziona la cartella radice del PST.", vbExclamation
Exit Sub
End If
Set root = Application.ActiveExplorer.CurrentFolder
If root Is Nothing Then
MsgBox "Seleziona la cartella radice del PST prima di avviare la macro.", vbExclamation
Exit Sub
End If
Dim cnt As Long
cnt = ProcessFolderRecursive(root)
MsgBox "Operazione completata su " & cnt & " cartelle.", vbInformation
```
End Sub
Private Function ProcessFolderRecursive(ByVal f As Outlook.Folder) As Long
Dim processed As Long
processed = 0
```
On Error GoTo CleanExit
' Intervieni solo su cartelle di posta
If f.DefaultItemType = olMailItem Then
FixOneFolder f
processed = processed + 1
End If
' Ricorsione
Dim subf As Outlook.Folder
For Each subf In f.Folders
processed = processed + ProcessFolderRecursive(subf)
Next
```
CleanExit:
ProcessFolderRecursive = processed
End Function
Private Sub FixOneFolder(ByVal f As Outlook.Folder)
On Error Resume Next
```
Dim pa As Outlook.PropertyAccessor
Set pa = f.PropertyAccessor
Dim curClass As String
curClass = ""
Err.Clear
curClass = pa.GetProperty(PR_CONTAINER_CLASS)
' Se è IMAP (o vuoto), imposta IPF.Note
If (UCase$(curClass) = "IPF.IMAP") Or (Trim$(curClass) = "") Then
pa.SetProperty PR_CONTAINER_CLASS, "IPF.Note"
End If
' Prova ad applicare una vista "sana"
ApplySafeView f
```
End Sub
Private Sub ApplySafeView(ByVal f As Outlook.Folder)
On Error Resume Next
```
Dim v As Outlook.View
Dim applied As Boolean
applied = False
' Nomi di viste comuni (localizzati)
Dim tryNames As Variant
tryNames = Array( _
"Messaggi", _
"Messaggi IMAP", _
"Compatta", _
"Compatto", _
"Messages", _
"IMAP Messages", _
"Compact" _
)
Dim i As Long
For i = LBound(tryNames) To UBound(tryNames)
Set v = Nothing
Err.Clear
Set v = f.Views.Item(CStr(tryNames(i)))
If Not v Is Nothing Then
v.Reset
v.Apply
applied = True
Exit For
End If
Next i
' Se non esiste una vista riconoscibile, crea e applica
If Not applied Then
Set v = f.Views.Add( _
"VistaRipristino", _
olTableView, _
olViewSaveOptionThisFolderEveryone)
If Not v Is Nothing Then
v.Reset
v.Apply
End If
End If
```
End Sub
Note operative e suggerimenti
- Ambito d’azione: la macro lavora sulla cartella attualmente selezionata e su tutte le sottocartelle. Se hai più PST, eseguila una volta per ciascun archivio (selezionandone la radice ogni volta).
- Cartelle non e-mail (Contatti, Calendario, Note) non vengono toccate: la macro verifica il tipo predefinito di elementi prima di intervenire.
- Compatibilità: lo script usa l’Object Model standard di Outlook e funziona da Outlook 2010 in avanti. In versioni molto datate potresti dover sostituire
Outlook.FolderconOutlook.MAPIFolder. - Prestazioni: su archivi grandi, lascia tempo alla ricorsione di completare. Evita di cliccare o cambiare cartella durante l’esecuzione.
Alternative e piani B
Applicare manualmente la vista corretta
Se preferisci non usare macro, l’approccio manuale (Cambia visualizzazione → Messaggi IMAP/Compatta → Applica a sottocartelle) è sufficiente nella maggior parte dei casi. È però più soggetto a ricadute se il PST viene consegnato a utenti con impostazioni diverse.
Ricreare le visualizzazioni di default
Se sospetti che una vista personalizzata stia interferendo, puoi ripristinare le viste con il comando d’avvio di Outlook /cleanviews (chiudi Outlook, esegui outlook.exe /cleanviews). Questo azzera le personalizzazioni e riporta le viste predefinite.
Verifica dell’integrità del PST
Raramente il problema è un file danneggiato, ma se vuoi toglierti il dubbio esegui ScanPST.exe (Strumento di riparazione Posta in arrivo). Percorsi tipici:
C:\Program Files\Microsoft Office\root\Office16\SCANPST.EXEC:\Program Files (x86)\Microsoft Office\root\Office16\SCANPST.EXE
Sostituisci Office16 con la tua versione (15, 14, ecc.).
Consigli pratici per il backup di Gmail
- Google Takeout: esporta l’intero account in formato
.mbox. È ideale come “copia di sicurezza” neutra e portabile. - Tool di terze parti (es. MailStore, Gmvault): utili per backup schedulati e incrementali.
- Archiviazione locale in Outlook: se usi IMAP e pianifichi un backup periodico in PST, valuta di copiare (drag & drop) le cartelle IMAP dentro un PST già esistente con tipo cartella “Posta elettronica”. In questo modo eviti a monte l’ereditarietà delle viste IMAP.
Gmail via IMAP: particolarità da conoscere
- Etichette ≠ Cartelle: Gmail usa etichette; con IMAP vengono mappate come cartelle. La stessa email può comparire in più “cartelle” se ha più etichette.
- All Mail (Tutti i messaggi): è l’archivio completo di Gmail; con IMAP include spesso copie che vedi anche sotto etichette specifiche.
- Eliminazione IMAP: alcune viste nascondono i messaggi “marcati per l’eliminazione” finché la cartella non viene compressa/purgata. Da qui nasce l’effetto “cartella vuota”.
Prevenire il problema in futuro
- Usa un PST “di destinazione” stabile: prima di esportare, crea (o riutilizza) un PST locale già impostato come posta standard e sposta/copia lì le cartelle IMAP. Così le nuove cartelle ereditano IPF.Note e le viste giuste.
- Standardizza le viste: crea una vista aziendale (ad es. “VistaArchivio”) e applicala a radice+sottocartelle per evitare filtri IMAP.
- Documenta la procedura: conserva lo script VBA e le istruzioni, così chi riceve il PST può ripetere la correzione al bisogno.
Checklist di verifica post-correzione
- Apri 3–5 cartelle a caso (incluso “Tutti i messaggi/All Mail”) e conferma che Totale elementi > 0 nella barra di stato.
- Esegui una ricerca per una parola che sai essere presente (es. dominio di un cliente) e verifica che la trovi in più cartelle.
- Scorri cartelle con molti elementi (migliaia): controlla che lo scorrimento sia fluido e che gli allegati siano accessibili.
- Chiudi e riapri Outlook: la vista resta corretta? Se sì, la correzione è stabile.
Domande frequenti
Il mio PST pesa 500 MB ma non vedo nulla: è corrotto?
Molto improbabile. Con account sorgente IMAP è quasi sempre una questione di vista. Prova subito “Messaggi IMAP” o “Compatta” su una cartella: se i messaggi compaiono, applica la vista a tutte le sottocartelle o usa la macro.
Posso perdere dati cambiando il tipo di cartella?
No: la modifica della container class (IPF.IMAP → IPF.Note) non elimina elementi. Cambia il modo in cui Outlook associa le viste predefinite a quella cartella, prevenendo i filtri IMAP.
Ho cartelle con contatti o note, rischio di danneggiarle?
Lo script proposto salta le cartelle che non hanno come elemento predefinito la posta (olMailItem). Quindi non toccherà contatti, calendario, attività, note.
Funziona anche su PST creati anni fa?
Sì. L’ereditarietà delle viste IMAP non dipende dall’anno del PST. Tieni solo conto dei limiti storici di dimensione del PST nelle versioni più vecchie (ad es. 20 GB in Outlook 2003/2007, 50 GB e oltre nelle versioni moderne).
La vista torna “sbagliata” su un altro PC?
Può succedere se il PST viene aperto su un Outlook con personalizzazioni di vista aggressive. Per questo la conversione a IPF.Note più l’applicazione di una vista “neutra” costituiscono una soluzione permanente.
La ricerca trova i messaggi ma l’elenco è vuoto. Perché?
La ricerca interroga l’indice e i contenuti del file, non la vista corrente. Se la vista li nasconde, il riquadro dei risultati può comportarsi in modo incoerente. Cambiare/azzerare la vista risolve.
Esempi di casi reali
- Consegna legale: un ufficio legale riceve un PST “vuoto” di 2 GB esportato da Gmail IMAP. Applicando “Messaggi IMAP” a radice+sottocartelle i messaggi appaiono subito. La macro poi standardizza la vista per la consegna a terzi.
- Migrazione interna: l’IT esporta caselle IMAP in PST per dismettere un vecchio server. Alcuni utenti segnalano cartelle vuote. La conversione IPF.IMAP → IPF.Note in batch ripristina la visibilità, senza dover riesportare.
Guida rapida (riassunto operativo)
- Controlla il peso del PST: se è consistente, i dati ci sono.
- Prova la vista: Visualizza → Cambia visualizzazione → Messaggi IMAP/Compatta.
- Applica a sottocartelle dalla gestione viste.
- Per eliminare ricadute: esegui la macro “FixPstImapViews” e converti il tipo di cartella.
- Convalida: ricerca, conteggio elementi, riavvio di Outlook.
Appendice: comprensione tecnica in breve
- Ogni cartella di Outlook ha una proprietà MAPI
PRCONTAINERCLASSche definisce il tipo logico (posta, contatti, calendario…). - Le cartelle IMAP usano tipicamente
IPF.IMAP; le cartelle di posta “classiche” usanoIPF.Note. - Le viste vengono mappate in base a questa classe: ecco perché, cambiandola, Outlook smette di applicare il filtro “nascondi messaggi contrassegnati per l’eliminazione”.
Conclusione
Se dopo l’esportazione di Gmail (IMAP) in PST le cartelle appaiono vuote, il PST non è corrotto: i messaggi sono nascosti da una vista ereditata dall’IMAP. Cambiando la visualizzazione (Metodo rapido) o convertendo il tipo di cartella e standardizzando la vista (Macro VBA) ottieni un archivio subito leggibile e stabile, senza perdita di dati.
In sintesi:
Il PST non è corrotto: i messaggi sono nascosti da un’impostazione di vista ereditata dall’IMAP. Cambia la visualizzazione (o lancia lo script) e l’archivio tornerà leggibile senza perdita di dati.
Verifiche utili (tabella rapida)
| Passo | Cosa controllare | Indicazione |
|---|---|---|
| Dimensione del PST | Proprietà file in Esplora Risorse | Se è >0, i messaggi sono presenti. |
| Ricerca in Outlook | Usa “Cerca in cartelle correnti” | Trovi i messaggi → problema di vista. |
| Tipo account sorgente | File → Impostazioni account | Se IMAP, il comportamento è quello descritto. |
Best practice per la consegna di PST a terzi
- Includi un file “LEGGIMI.txt” con: versione di Outlook usata, passi per applicare la vista, nota sulla conversione a IPF.Note.
- Se possibile, fornisci due PST: uno “originale” e uno “normalizzato” (dopo macro). Così chi riceve può scegliere.
- Evita di allegare PST via email: usa supporti affidabili o condivisioni sicure. Indica l’hash (MD5/SHA256) per integrità.
Risoluzione problemi avanzata
- Cartella ancora vuota dopo la macro: prova il comando
/cleanviews, poi riapplica la macro sulla radice. - Vista personalizzata ostinata: in “Gestisci visualizzazioni…”, elimina la vista personalizzata della cartella e applica “Messaggi/Compatta”.
- Ricerca zero risultati: ricostruisci l’indice di Windows (Opzioni di indicizzazione), assicurati che il percorso del PST sia incluso.
- PST molto grandi: valuta di suddividere per anno o progetto per migliorare prestazioni e affidabilità del backup.
Consigli aggiuntivi per il backup di Gmail
- Google Takeout: export diretto di tutto l’account in formato
.mbox. - Tool di terze parti (es. MailStore, Gmvault): automazione e incrementalità.
- Archiviazione locale in Outlook: se usi IMAP, considera di copiare le cartelle su un file PST già esistente con tipo cartella “Posta elettronica” per evitare il problema in partenza.
