Alguns usuários desejam que o Outlook possa avisá-lo se houver muitos e-mails não lidos em sua caixa de entrada, incluindo as subpastas. Embora o Outlook não ofereça essa função, ela ainda pode ser realizada com o código VBA. Este artigo mostrará esse código para você.
Às vezes, devido às suas agendas lotadas, você pode deixar um grande número de e-mails não lidos em sua caixa de entrada. Com mais e mais e-mails acumulados, lidar com eles mais tarde será uma tarefa bastante tediosa e problemática. Nesse caso, você pode esperar que o Outlook possa lembrá-lo se o número de e-mails não lidos exceder um limite específico. A seguir, compartilharemos com você um meio de realizar essa função.

Seja avisado se houver muitos e-mails não lidos
- Para começar, abra o Outlook como de costume.
- Em seguida, na janela principal do Outlook, pressione os botões de tecla “Alt + F11”.
- Em seguida, você entrará na janela “Microsoft Visual Basic for Applications”, na qual você precisa encontrar e abrir o projeto “ThisOutlookSession”.
- Posteriormente, você deve copiar o seguinte código VBA para este projeto.
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
- Depois disso, você deve assinar este código.
- Mais tarde, saia da janela atual e altere as configurações de macro do Outlook para habilitar macros assinadas digitalmente.
- Por fim, você pode reiniciar o Outlook para ativar essa nova macro.
- A partir de agora, sempre que você iniciar o Outlook e um novo e-mail chegar à sua caixa de entrada, o Outlook verificará automaticamente o número de e-mails não lidos na Caixa de Entrada e em suas subpastas.
- Se o número exceder o limite predefinido, o Outlook o avisará, como na captura de tela a seguir:
Recuperar dados do Outlook após falhas abruptas
O Outlook não consegue eliminar completamente os erros. E erros de montagem podem levar a falhas sem nenhum aviso. Falhas graves podem danificar seu arquivo de dados do Outlook em um instante. Portanto, é necessário que você tome precauções suficientes, como fazer backups regulares de dados e obter uma ferramenta de recuperação externa potente, como DataNumen Outlook Repair. Ele pode ajudá-lo a reparar PST arquivo com facilidade.
Introdução do autor:
Shirley Zhang é especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo conserto de mdf e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com

