Note: The other languages of the website are Google-translated. Back to English
Log in  \/ 
x
or
x
Inscreva-se  \/ 
x

or

Como enviar lembrete ou notificação por e-mail se a pasta de trabalho for atualizada no Excel?

Em alguns casos, pode ser necessário acionar uma notificação por email para um destinatário específico se houver dados atualizados na pasta de trabalho que você enviou. Este artigo mostrará o método para alcançá-lo.

Enviar lembrete por e-mail ou notificação se a pasta de trabalho for atualizada com o código VBA


Enviar lembrete por e-mail ou notificação se a pasta de trabalho for atualizada com o código VBA


Faça o seguinte para enviar lembrete ou notificação por e-mail se a pasta de trabalho for atualizada.

1. Na pasta de trabalho, abra uma planilha especificada para enviar uma notificação por e-mail com base nos dados atualizados.

2. Clique com o botão direito na guia da folha e selecione Ver código no menu do botão direito. Veja a imagem:

2. No Microsoft Visual Basic para Aplicações janela, copie e cole o código a seguir na janela de código. Veja a imagem:

Código VBA: enviar lembrete ou notificação por e-mail se a pasta de trabalho for atualizada

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2017/9/14
    Dim xOutApp As Object
    Dim xMailItem As Object
    Dim xName As String
    Dim xYesOrNo As Integer
    On Error Resume Next
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailItem = xOutApp.CreateItem(0)
    xYesOrNo = MsgBox("Want to attach updated workbook in email?", vbInformation + vbYesNo, "KuTools For Excel")
    If xYesOrNo = 6 Then ActiveWorkbook.Save
    If xYesOrNo = 6 Then xName = ActiveWorkbook.FullName
    With xMailItem
        .To = "Email Address"
        .cc = ""
        .Subject = "email notification test"
        .Body = "Hi," & Chr(13) & Chr(13) & "File is now updated."
        If xYesOrNo = 6 Then .Attachments.Add xName
        .Display
    End With
    xMailItem = Nothing
    xOutApp = Nothing
End Sub

Importante: Substitua o endereço de e-mail pelo endereço de e-mail do destinatário na linha .To = "Endereço de e-mail". E altere os campos Cc, Assunto e corpo no código VBA conforme necessário.

3. aperte o outro + Q chaves para fechar o Microsoft Visual Basic para Aplicações janela.

4. Depois de editar uma célula na planilha, um Kutools for Excel a caixa de diálogo aparecerá conforme a imagem mostrada abaixo. Se você deseja anexar a pasta de trabalho atualizada ao e-mail, clique no Sim botão. Caso contrário, clique no Não botão.

5. Em seguida, um e-mail é criado automaticamente com ou sem a pasta de trabalho atualizada anexada. E todos os campos especificados também são listados no e-mail. Por favor clique no ENVIAR botão para enviá-lo.

Importante: O código VBA só funciona quando você usa o Outlook como seu programa de e-mail.


Artigos relacionados:


As melhores ferramentas de produtividade para escritório

O 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 ...
  • Super Formula Bar (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-2019 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Teste gratuito de 30 dias com recursos completos. Garantia de devolução do dinheiro em 60 dias.
guia kte 201905

Guia do Office 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!
officetab bottom
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Guest · 8 months ago
    For me the code runs again and again, its like never ending loop. I close email it asks again to send it...
  • To post as a guest, your comment is unpublished.
    MJ · 1 years ago
    When I tried to change something in a cell a message prompted for Outlook email configuration and it just keeps on asking for my password.



    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Hi MJ,
      Which Excel version are you using? Can you provide a screenshot of the prompt?
  • To post as a guest, your comment is unpublished.
    James Crook · 1 years ago
    Sorry, I posted this in the wrong article. I will post in the correct article
  • To post as a guest, your comment is unpublished.
    James Crook · 1 years ago
    Hello there, The code works great. However, when a cell changes to below the threshold point via a macro operation that copies and pastes the lower value into the designated cell, the code doesn't seem to trigger.

    Also, I would like to apply this code to several cells. Can I copy and paste the code several times and change each copied version to fit each cells' needs? Is there a better way to do that. I can't figure that out. Thank you!
  • To post as a guest, your comment is unpublished.
    Juno24 · 2 years ago
    I copied and pasted the code exactly as-is from this page, but when I make a change to my document I get the message "Syntax Error" and this line highlights: Dim xOutApp As Object. Any help would be appreciated.
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi Judy,
      Would you provide the Excel version you are using? Thank you for your comment.
  • To post as a guest, your comment is unpublished.
    Leah · 2 years ago
    Can i CC more than person in this? Thanks
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi Leah,
      Please enter the email addresses directly in the .cc="" line and separate them with semicolon, such as .cc = "AAA@gmail.com;BBB@gmail.com"
  • To post as a guest, your comment is unpublished.
    Jake Berger · 3 years ago
    If anyone found this page wondering how to send an email from Excel using CDO, I threw together a Google Doc -- How to Send Email from Excel using Gmail (https://docs.google.com/document/d/1u5VLzCApU3k4-9Vp9LEfqyFZ6u9tAY0avNPYN_1FsN4/edit?usp=sharing) with code on GitHub gist (https://gist.github.com/bergerjac/7355d4e528fa6c64a02dc494f3d241a1)