Como enviar email se uma determinada célula é modificada no Excel?
Este artigo fala sobre o envio de um email pelo Outlook quando uma célula em um determinado intervalo é modificada no Excel.
Enviar e-mail se a célula em um determinado intervalo for modificada com o código VBA
Enviar e-mail se a célula em um determinado intervalo for modificada com o código VBA
Se você precisar criar um novo email automaticamente com a pasta de trabalho ativa anexada quando uma célula no intervalo A2:E11 for modificada em uma determinada planilha, o código VBA a seguir poderá ajudá-lo.
1. Na planilha que você precisa enviar e-mail com base em sua célula modificada em um determinado intervalo, clique com o botão direito na guia da planilha e clique no botão Ver código no menu de contexto. Veja a imagem:
2. No popping up Microsoft Visual Basic para Aplicações janela, copie e cole o código VBA abaixo na janela Código.
Código VBA: enviar e-mail se a célula em um intervalo especificado for modificada no Excel
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2017/9/12
Dim xRgSel As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xMailBody As String
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xRg = Range("A2:E11")
Set xRgSel = Intersect(Target, xRg)
ActiveWorkbook.Save
If Not xRgSel Is Nothing Then
Set xOutApp = CreateObject("Outlook.Application")
Set xMailItem = xOutApp.CreateItem(0)
xMailBody = "Cell(s) " & xRgSel.Address(False, False) & _
" in the worksheet '" & Me.Name & "' were modified on " & _
Format$(Now, "mm/dd/yyyy") & " at " & Format$(Now, "hh:mm:ss") & _
" by " & Environ$("username") & "."
With xMailItem
.To = "Email Address"
.Subject = "Worksheet modified in " & ThisWorkbook.FullName
.Body = xMailBody
.Attachments.Add (ThisWorkbook.FullName)
.Display
End With
Set xRgSel = Nothing
Set xOutApp = Nothing
Set xMailItem = Nothing
End If
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Notas:
3. aperte o outro + Q simultaneamente para fechar o Microsoft Visual Basic para Aplicações janela.
A partir de agora, qualquer célula no intervalo A2: E11 é modificada, um novo e-mail será criado com a pasta de trabalho atualizada anexada. E todos os campos especificados, como assunto, destinatário e corpo do email, serão listados no email. Por favor, envie o email.
Note: O código VBA funciona apenas se você estiver usando o Outlook como seu programa de email.

Desbloqueie o Excel Magic com Kutools AI
- Execução Inteligente: execute operações em células, analise dados e crie gráficos, tudo orientado por comandos simples.
- Fórmulas personalizadas: gere fórmulas personalizadas para agilizar seus fluxos de trabalho.
- Codificação VBA: Escreva e implemente código VBA sem esforço.
- Interpretação de Fórmula: Entenda fórmulas complexas com facilidade.
- Tradução do texto: Quebre as barreiras linguísticas nas suas planilhas.
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 e-mail se o botão for clicado no Excel?
- Como enviar e-mail se a data de vencimento foi cumprida no Excel?
- Como enviar lembrete ou notificação por e-mail se a pasta de trabalho for atualizada no Excel?
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz 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!