Algumas pessoas esperam que o Outlook possa verificar automaticamente os assuntos dos e-mails mais antigos quando novos e-mails chegarem e renomear ou excluir os e-mails mais antigos se eles tiverem os mesmos assuntos dos novos e-mails. Isso exige o uso do Outlook VBA. Este artigo irá ajudá-lo a alcançá-lo.
Você já deve ter recebido muitos e-mails com os mesmos assuntos. É um pouco problemático para você identificá-los e distingui-los na lista de e-mail? Ou você acha que aqueles e-mails mais antigos são exatamente inúteis para você? Nesse caso, você deve permitir que o Outlook verifique e verifique automaticamente todos os e-mails existentes quando novos e-mails chegarem. Quando há e-mails com os mesmos assuntos do novo, o Outlook pode perguntar se você deseja renomeá-los ou excluí-los. Sem dúvida, o Outlook não fornece aos usuários esse tipo de recurso. Portanto, você deve recorrer ao VBA. Aqui vamos expor os códigos detalhados e operações para você.
Renomear automaticamente ou remover os e-mails mais antigos
- Primeiramente, você pode iniciar o Outlook e acessar a guia "Desenvolvedor".
- Então você poderá encontrar e clicar no botão “Visual Basic”.
- Após acertá-lo, você acessará a janela do editor VBA. Nele, você precisará abrir o projeto “ThisOutlookSession”.
- Em seguida, você deve copiar e colar os seguintes códigos VBA nele.
Public WithEvents olItems As Outlook.Items
Sub Application_Startup()
'Specify the Emails in Inbox folder
Set olItems = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub olItems_ItemAdd(ByVal Item As Object)
Dim i As Long
Dim objVariant As Variant
Dim strMsg As String
Dim nRes As Integer
For i = 1 To olItems.Count
Set objVariant = olItems.Item(i)
If TypeOf objVariant Is MailItem Then
If objVariant.Subject = Item.Subject And objVariant.ReceivedTime < Item.ReceivedTime Then
nDateDiff = DateDiff("d", objVariant.ReceivedTime, Now)
'Add "(Old)" suffix to the email subjects
objVariant.Subject = objVariant.Subject & "(Old)"
objVariant.Save
'If the old emails have been recieved for 60 days, ask you whether to delete
If nDateDiff > 60 Then
strMsg = "There are some older emails whcih have the same subjects with the new email and have been recieved for 2 months. Do you want to delete them?"
nRes = MsgBox(strMsg, vbExclamation + vbYesNo, "Find Older Emails")
If nRes = vbYes Then
objVariant.Delete
End If
End If
End If
End If
Next
End Sub
- Posteriormente, você seria obrigado a assinar digitalmente este código. Clique em “Ferramentas” > “Assinatura digital”. Em seguida, na caixa de diálogo pop-up, você pode selecionar um certificado existente. Se não houver certificado pronto, você pode usar “Certificados digitais para projetos VBA” para criar um novo.
- Depois disso, você pode sair da janela atual e alterar as configurações de macro, permitindo apenas macros assinadas digitalmente.
- Por fim, você pode reiniciar o Outlook para ativar a nova macro. A partir de agora, quando novos e-mails chegarem à Caixa de Entrada, o Outlook verificará automaticamente todos os e-mails existentes.
- Se os e-mails antigos tiverem o mesmo assunto do novo, o Outlook adicionará automaticamente o sufixo “(Antigo)” ao assunto do e-mail.
- E se os e-mails mais antigos estiverem armazenados na Caixa de entrada por mais de 2 meses, você receberá uma solicitação perguntando se deseja excluí-los, como na imagem abaixo. Você pode selecionar “Sim” ou “Não” com base em suas próprias necessidades.
Corrupção de arquivo do Outlook devido ao tamanho grande
Algumas pessoas não têm o hábito de excluir itens antigos regularmente no Outlook. Assim, o arquivo do Outlook acaba ficando muito grande, o que é totalmente desaconselhável. Isso porque um arquivo do Outlook muito grande é muito mais vulnerável do que um arquivo pequeno. Uma vez que o arquivo é corrompido, a ferramenta de reparo integrada, Scanpst.exe, será inútil na maioria dos casos. Sua única solução pode ser uma ferramenta eficaz e comprovada. ferramenta de reparo do Outlook PST corrompido, gostar DataNumen Outlook Repair.
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 reparar corrompido SQL Server banco de dados mdf e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com


