Como enviar um e-mail quando a Data de Vencimento for atingida no Excel?
Conforme ilustrado na imagem abaixo, sempre que a Data de Vencimento na coluna C for menor ou igual a 7 dias (por exemplo, considerando a data atual como 13/9/2017), é enviado um e-mail ao destinatário indicado na coluna A, com o conteúdo da coluna B incluído no corpo da mensagem. Como pode executar esta tarefa? Este artigo disponibiliza um código VBA para o ajudar a implementá-la.

Enviar e-mail se Data de Vencimento tiver sido cumprido com código VBA
Enviar e-mail se Data de Vencimento tiver sido cumprido com código VBA
Siga os passos abaixo para enviar um lembrete por e-mail caso a Data de Vencimento tenha sido atingida no Excel.
1. Prima em simultâneo as teclas Alt+F11 para abrir a janela do Microsoft Visual Basic for Applications.
2. Na janela do Microsoft Visual Basic for Applications, clique em Inserir > Módulo. Em seguida, copie e cole o código VBA abaixo na janela do Módulo.
Código VBA: Enviar e-mail se Data de Vencimento for fechado no Excel
Public Sub CheckAndSendMail()
'Updated by Extendoffice 2018/11/22
Dim xRgDate As Range
Dim xRgSend As Range
Dim xRgText As Range
Dim xRgDone As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xLastRow As Long
Dim vbCrLf As String
Dim xMailBody As String
Dim xRgDateVal As String
Dim xRgSendVal As String
Dim xMailSubject As String
Dim i As Long
On Error Resume Next
Set xRgDate = Application.InputBox("Please select the due date column:", "KuTools For Excel", , , , , , 8)
If xRgDate Is Nothing Then Exit Sub
Set xRgSend = Application.InputBox("Please select the recipients?email column:", "KuTools For Excel", , , , , , 8)
If xRgSend Is Nothing Then Exit Sub
Set xRgText = Application.InputBox("Select the column with reminded content in your email:", "KuTools For Excel", , , , , , 8)
If xRgText Is Nothing Then Exit Sub
xLastRow = xRgDate.Rows.count
Set xRgDate = xRgDate(1)
Set xRgSend = xRgSend(1)
Set xRgText = xRgText(1)
Set xOutApp = CreateObject("Outlook.Application")
For i = 1 To xLastRow
xRgDateVal = ""
xRgDateVal = xRgDate.Offset(i - 1).Value
If xRgDateVal <> "" Then
If CDate(xRgDateVal) - Date <= 7 And CDate(xRgDateVal) - Date > 0 Then
xRgSendVal = xRgSend.Offset(i - 1).Value
xMailSubject = xRgText.Offset(i - 1).Value & " on " & xRgDateVal
vbCrLf = "<br><br>"
xMailBody = "<HTML><BODY>"
xMailBody = xMailBody & "Dear " & xRgSendVal & vbCrLf
xMailBody = xMailBody & "Text : " & xRgText.Offset(i - 1).Value & vbCrLf
xMailBody = xMailBody & "</BODY></HTML>"
Set xMailItem = xOutApp.CreateItem(0)
With xMailItem
.Subject = xMailSubject
.To = xRgSendVal
.HTMLBody = xMailBody
.Display
'.Send
End With
Set xMailItem = Nothing
End If
End If
Next
Set xOutApp = Nothing
End Sub Notas: A linha If CDate(xRgDateVal) - Date <= 7 And CDate(xRgDateVal) - Date > 0 Then no código VBA significa que a data de vencimento deve ser superior a 1 dia e menor ou igual a 7 dias. Pode ajustá-la conforme necessário.
3. Prima a tecla F5 para executar o código. Na primeira caixa de diálogo Kutools para Excel que surge, selecione o intervalo da coluna Data de Vencimento e clique no botão OK. Veja a imagem:

4. Em seguida, surge a segunda caixa de diálogo Kutools para Excel. Por favor, selecione o intervalo correspondente da coluna que contém os endereços de e-mail dos destinatários e clique no botão OK. Veja a imagem:

5. Na última caixa de diálogo Kutools para Excel, selecione o conteúdo que pretende incluir no corpo do e-mail e, em seguida, clique no botão OK.

Será então criado automaticamente um e-mail com o destinatário, assunto e corpo especificados, caso a Data de Vencimento na coluna C seja menor ou igual a 7 dias. Clique no botão Enviar para enviar o e-mail.

Notas:
1. Cada e-mail criado corresponde a um Data de Vencimento. Por exemplo, se três Data de Vencimento cumprirem os critérios, serão criadas automaticamente três mensagens de e-mail.
2. Este código não será acionado se não existirem datas que cumpram os critérios.
3. O código VBA só funciona se utilizar o Outlook como seu programa de e-mail.

Desbloqueie a Magia do Excel com KUTOOLS AI
- Execução Inteligente: Realize operações em células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
- fórmulas personalizadas: Crie fórmulas personalizadas para simplificar os seus fluxos de trabalho.
- Programação VBA: Escreva e implemente código VBA com facilidade.
- Interpretação de Fórmulas: Compreenda facilmente fórmulas complexas.
- Tradução de Texto: Elimine barreiras linguísticas nas suas folhas de cálculo.
Artigos relacionados:
- Como enviar automaticamente um e-mail com base no valor de uma célula no Excel?
- Como enviar um e-mail pelo Outlook ao guardar um livro no Excel?
- Como enviar um e-mail automaticamente sempre que uma determinada célula for modificada no Excel?
- Como enviar um e-mail ao clicar num botão no Excel?
- Como enviar um lembrete ou notificação por e-mail sempre que o livro for atualizado no Excel?
As Melhores Ferramentas de Produtividade para o Office
Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...
Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil
- Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
- Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!
Todos os suplementos Kutools — num único instalador.
Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.
- Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Um instalador, uma licença— configuração em minutos (pronto para MSI)
- Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
- Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
- Melhor relação qualidade-preço— poupe face à compra individual dos suplementos