Como enviar e-mail se a data de vencimento foi cumprida no Excel?
Conforme mostrado na captura de tela abaixo, se a data de vencimento na coluna C for menor ou igual a 7 dias (por exemplo, a data atual é 2017/9/13), um e-mail será enviado ao destinatário especificado na coluna A e o o conteúdo especificado na coluna B é exibido no corpo do e-mail. Como você poderia fazer para alcançá-lo? Este artigo fornece um código VBA para ajudá-lo a realizar essa tarefa.
Envie um e-mail se a data de vencimento for cumprida com o código VBA
Envie um e-mail se a data de vencimento for cumprida com o código VBA
Faça o seguinte para enviar um lembrete por e-mail caso a data de vencimento tenha sido cumprida no Excel.
1. aperte o outro + F11 simultaneamente para abrir o Microsoft Visual Basic para Aplicações janela.
2. No Microsoft Visual Basic para Aplicações janela, por favor clique inserção > Módulo. Em seguida, copie e cole o código VBA abaixo na janela Módulo.
Código VBA: enviar e-mail se a data de vencimento estiver fechada 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 Se CDate (xRgDateVal) - Data <= 7 E CDate (xRgDateVal) - Data> 0 Então, no código VBA, significa que a data de vencimento deve ser maior que 1 dia e menor ou igual a 7 dias. Você pode alterá-lo conforme necessário.
3. Pressione do Tecla F5 para executar o código. Na primeira aparição Kutools for Excel caixa de diálogo, selecione o intervalo da coluna de data de vencimento e clique no botão OK botão. Veja a imagem:
4. Então o segundo Kutools for Excel caixa de diálogo aparece, selecione o intervalo de coluna correspondente que contém os endereços de e-mail dos destinatários e clique no botão OK botão. Veja a imagem:
5. No último Kutools for Excel caixa de diálogo, selecione o conteúdo que deseja exibir no corpo do e-mail e clique no OK botão.
Em seguida, um e-mail será criado automaticamente com o destinatário, assunto e corpo especificados listados se a data de vencimento na coluna C for menor ou igual a 7 dias. Por favor clique no ENVIAR botão para enviar o e-mail.
Notas:
1. Cada e-mail criado corresponde a uma data de vencimento. Por exemplo, se houver três datas de vencimento que atendam aos critérios, três mensagens de e-mail serão criadas automaticamente.
2. Este código não será acionado se não houver datas que atendam aos critérios.
3. O código VBA só funciona quando você usa o Outlook como seu programa de e-mail.
Artigos relacionados:
- Como enviar e-mail automaticamente com base no valor da célula no Excel?
- Como enviar um email pelo Outlook quando a pasta de trabalho é salva no Excel?
- Como enviar email se uma determinada célula é modificada no Excel?
- Como enviar e-mail se o botão for clicado no Excel?
- Como enviar lembrete ou notificação por e-mail se a pasta de trabalho for atualizada no Excel?
As melhores ferramentas de produtividade para escritório
Kutools for Excel Resolve a maioria dos seus problemas e aumenta sua produtividade em 80%
- armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
- Barra Super Fórmula (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
- Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
- Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
- Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
- Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
- Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
- Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
- Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2021 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Recursos completos de avaliação gratuita de 30 dias. Garantia de devolução do dinheiro em 60 dias.

Office Tab Traz a interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!












































