Alcuni utenti desiderano che Outlook possa avvisarti se ci sono troppe e-mail non lette nella loro casella di posta, comprese le sottocartelle. Sebbene Outlook non offra tale funzione, può comunque essere realizzata con il codice VBA. Questo articolo ti mostrerà questo codice.
A volte, a causa dei tuoi impegni, potresti lasciare un gran numero di messaggi non letti nella tua casella di posta. Con sempre più e-mail accumulate, occuparsene in seguito sarà un compito piuttosto noioso e problematico. In questo caso, potresti sperare che Outlook possa ricordarti se il numero di e-mail non lette supera un limite specifico. Di seguito, ti condivideremo un mezzo per raggiungere questa funzione.

Ricevi un avviso se ci sono troppe email non lette
- A start con, avvia il tuo programma Outlook come al solito.
- Successivamente, nella finestra principale di Outlook, premi i pulsanti "Alt + F11".
- Quindi, entrerai nella finestra "Microsoft Visual Basic for Applications", in cui devi trovare e aprire il progetto "ThisOutlookSession".
- Successivamente, è necessario copiare il seguente codice VBA in questo progetto.
Private objInbox As Outlook.Folder
Private WithEvents objItems As Outlook.Items
Private lUnreadItemCount As Long
Private Sub Application_Startup()
Set objInbox = Application.Session.GetDefaultFolder(olFolderInbox)
Set objItems = objInbox.Items
lUnreadItemCount = 0
Call CountUnreadEmails(objInbox, lUnreadItemCount)
'If there are more than 10 unread emails
If lUnreadItemCount > 10 Then
MsgBox "Too many unread emails in Inbox!" & vbCr & "Please deal with them as soon as possible!", vbExclamation + vbOKOnly, "Check Unread Emails"
End If
End Sub
Private Sub objItems_ItemAdd(ByVal Item As Object)
Call CountUnreadEmails(objInbox, lUnreadItemCount)
lUnreadItemCount = 0
If lUnreadItemCount > 10 Then
MsgBox "Too many unread emails!" & vbCr & "Please deal with them as soon as possible!", vbExclamation + vbOKOnly, "Check Unread Emails"
End If
End Sub
Private Sub CountUnreadEmails(ByVal objFolder As Outlook.Folder, ByRef lCount As Long)
Dim objUnreadItems As Outlook.Items
Dim objSubfolder As Outlook.Folder
Set objUnreadItems = objFolder.Items.Restrict("[Unread] = True")
lCount = objUnreadItems.count + lCount
'Process all subfolders under Inbox recursively
If objFolder.Folders.count > 0 Then
For Each objSubfolder In objFolder.Folders
Call CountUnreadEmails(objSubfolder, lCount)
Next
End If
End Sub
- Successivamente, dovresti firmare questo codice.
- Successivamente, esci dalla finestra corrente e modifica le impostazioni delle macro di Outlook per abilitare le macro con firma digitale.
- Finalmente puoi ristart tuo Outlook per attivare questa nuova macro.
- D'ora in poi, ogni volta che starQuando Outlook e le nuove e-mail arrivano nella tua casella di posta, Outlook controllerà automaticamente il numero di e-mail non lette nella Posta in arrivo e nelle relative sottocartelle.
- Se il numero supera il limite predefinito, Outlook ti avviserà, come il seguente screenshot:
Recupera i dati di Outlook dopo arresti anomali improvvisi
Outlook non può eliminare completamente gli errori. E gli errori di montaggio possono portare a arresti anomali senza alcuna richiesta. Gravi arresti anomali possono danneggiare il file di dati di Outlook in un batter d'occhio. Pertanto, è necessario che tu prenda precauzioni sufficienti, come eseguire backup regolari dei dati e procurarti un potente strumento di recupero esterno, come DataNumen Outlook Repair. Può aiutarti a riparare PST file con facilità.
Introduzione dell'autore:
Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui correzione del mdf e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com

