Skip to main content

Como enviar / e-mail um intervalo de células pelo Outlook a partir do Excel?

Author: Xiaoyang Last Modified: 2025-06-04

Você já enfrentou o problema de, após concluir um relatório em uma planilha, precisar enviar um intervalo de células dessa planilha que contém alguns dados importantes para um destinatário específico? Existem maneiras rápidas de enviar este intervalo diretamente do Excel sem abrir o Outlook?

Enviar intervalo de células como anexo do Excel com código VBA

Enviar intervalo de células como corpo do e-mail do Excel com código VBA


arrow blue right bubbleEnviar intervalo de células como anexo do Excel com código VBA

O seguinte código VBA pode ajudá-lo a enviar o intervalo selecionado como anexo no Excel. Por favor, siga estas instruções:

1. Abra sua pasta de trabalho e, em seguida, pressione as teclas ALT + F11 para abrir a janela Microsoft Visual Basic for Applications.

2. Clique em Inserir > Módulo e cole o seguinte código na Janela do Módulo.

Código VBA: enviar intervalo de células como anexo do Excel

Sub SendRange()
'Update 20131209
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim Ws As Worksheet
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim WorkRng As Range
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set Wb = Application.ActiveWorkbook
Wb.Worksheets.Add
Set Ws = Application.ActiveSheet
WorkRng.Copy Ws.Cells(1, 1)
Ws.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
    If Wb2.HasVBProject Then
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Else
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
Case Excel8:
    xFile = ".xls"
    xFormat = Excel8
Case xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
    .To = "skyyang@extendoffice.com"
    .CC = ""
    .BCC = ""
    .Subject = "information of kte"
    .Body = "hello, please check and read this document. "
    .Attachments.Add Wb2.FullName
    .Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Ws.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Observação: No código acima, você pode alterar as seguintes informações conforme sua necessidade.

  • .To = "skyyang@extendoffice.com"
  • .CC = ""
  • .BCC = ""
  • .Subject = "informações do kte"
  • .Body = "olá, por favor verifique e leia este documento."

3. Em seguida, clique na tecla F5 para executar este código, e uma caixa de aviso aparecerá para lembrá-lo de selecionar o intervalo que deseja enviar. Veja a captura de tela:

vba code to select the data range

4. Depois clique em OK, e outra caixa de aviso aparecerá; após a barra de progresso concluir, clique em Permitir, e então o intervalo específico de células será enviado ao seu destinatário como anexo.

click Allow to send the selected range as attachment

a screenshot of kutools for excel ai

Desbloqueie a Magia do Excel com o Kutools AI

  • Execução Inteligente: Realize operações de células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
  • Fórmulas Personalizadas: Gere fórmulas sob medida para otimizar seus fluxos de trabalho.
  • Codificação VBA: Escreva e implemente código VBA sem esforço.
  • Interpretação de Fórmulas: Compreenda fórmulas complexas com facilidade.
  • Tradução de Texto: Supere barreiras linguísticas dentro de suas planilhas.
Potencialize suas capacidades no Excel com ferramentas alimentadas por IA. Baixe Agora e experimente uma eficiência como nunca antes!

arrow blue right bubbleEnviar intervalo de células como corpo do e-mail do Excel com código VBA

Se você quiser enviar um intervalo específico como parte do corpo da mensagem do Excel, também pode aplicar o seguinte código VBA para resolver isso.

1. Ative sua planilha e pressione as teclas ALT + F11 para abrir a janela Microsoft Visual Basic for Applications.

2. Clique em Inserir > Módulo e cole o seguinte código na Janela do Módulo.

Código VBA: enviar intervalo de células como corpo do e-mail do Excel

Sub EmailRange()
'Update 20131209
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
WorkRng.Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
    .Introduction = "Please read this email."
    .Item.To = "skyyang@extendoffice.com"
    .Item.Subject = "information of kte"
    .Item.Send
End With
Application.ScreenUpdating = True
End Sub

Observação: No código acima, você pode alterar as seguintes informações conforme necessário.

  • .Introduction = "Por favor, leia este e-mail."
  • .Item.To = "skyyang@extendoffice.com"
  • .Item.Subject = "informações do kte"

3. Em seguida, clique na tecla F5 para executar este código, e uma caixa de aviso aparecerá para lembrá-lo de selecionar o intervalo que deseja enviar.

vba code to select the data range

4. Depois clique em OK, e outra caixa de aviso aparecerá; após a barra de progresso concluir, clique em Permitir, e então o intervalo específico de células será enviado ao seu destinatário como corpo da mensagem.

click Allow to send the selected range as email body

Observações:

1. Esses códigos só estão disponíveis quando o Outlook é seu programa de e-mail.

2. Após enviar a planilha atual, você pode ir ao seu Outlook para verificar se o e-mail foi enviado com sucesso.


Artigos relacionados:

Como enviar apenas uma planilha pelo Outlook a partir do Excel?

Como enviar a pasta de trabalho atual pelo Outlook a partir do Excel?

Melhores Ferramentas de Produtividade para Office

🤖 Assistente AI do KUTOOLS: Revolucione a análise de dados com base em: Execução Inteligente | Gerar Código | Criar Fórmulas Personalizadas | Analisar Dados e Gerar Gráficos | Invocar Funções Aprimoradas
Recursos Populares: Encontrar, Destacar ou Marcar Duplicatas | Excluir Linhas em Branco | Combinar Colunas ou Endereço sem Perder Dados | Arredondar...
Super PROC: PROC com Múltiplos Critérios | PROC com Múltiplos Valores | Procura em várias planilhas | Correspondência Fuzzy...
Lista Suspensa Avançada: Crie rapidamente uma Lista Suspensa | Lista Suspensa Dependente | Lista Suspensa com Múltipla Seleção...
Gerenciador de Colunas: Adicionar um Número Específico de Colunas | Mover Colunas | Alternar Estado de Visibilidade das Colunas Ocultas | Comparar Intervalo & Colunas...
Recursos em Destaque: Grade de foco | Visualização de Design | Barra de fórmulas aprimorada | Gerenciador de Pasta de trabalho & Planilha | Biblioteca de AutoTexto | Selecionador de Data | Mesclar Dados | Criptografar/Descriptografar Células | Enviar Email por Lista | Super Filtro | Filtro Especial (filtrar negrito/itálico/tachado...)...
Top15 Conjuntos de Ferramentas:12 Ferramentas de Texto (Adicionar Texto, Excluir Caracteres Específicos, ...) | Mais de50 Tipos de Gráficos (Gráfico de Gantt, ...) | Mais de40 Fórmulas Práticas (Calcular a idade com base na data de nascimento, ...) |19 Ferramentas de Inserção (Inserir Código QR, Inserir Imagem a partir do Caminho, ...) |12 Ferramentas de Conversão (Converter em Palavras, Conversão de Moeda, ...) |7 Ferramentas de Mesclar & Dividir (Mesclar Linhas Avançado, Dividir Células, ...) | ... e muito mais

Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...


O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho

  • Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
  • Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!