Skip to main content

Como enviar um e-mail com vários anexos no Excel?

Author: Siluvia Last Modified: 2025-06-04

Este artigo trata de como enviar um e-mail pelo Outlook com vários anexos no Excel.

Enviar e-mail com vários anexos no Excel usando código VBA


Enviar e-mail com vários anexos no Excel usando código VBA

Por favor, siga os passos abaixo para enviar um e-mail com vários anexos no Excel.

1. Por favor, insira um botão de comando clicando em Desenvolvedor > Inserir > Botão de Comando (Controle ActiveX). Veja a captura de tela:

click Command Button from Developer tab

2. Após inserir o Botão de Comando, clique com o botão direito nele e selecione Visualizar Código no menu de contexto.

select View Code from the context menu

3. Na janela Microsoft Visual Basic for Applications que se abre, por favor, clique em Ferramentas > Referências conforme mostrado na captura de tela abaixo.

click Tools > References

4. Na caixa de diálogo Referências – VBAProject, encontre e marque a opção Microsoft Outlook Object Library e depois clique no botão OK.

check the Microsoft Outlook Object Library option in the dialog box

5. Em seguida, substitua o código original na janela Código pelo seguinte código VBA.

Código VBA: Enviar e-mail com vários anexos no Excel

Private Sub CommandButton1_Click()
    Dim xStrFile As String
    Dim xFilePath As String
    Dim xFileDlg As FileDialog
    Dim xFileDlgItem As Variant
    Dim xOutApp As Outlook.Application
    Dim xMailOut As Outlook.MailItem
    Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    Set xFileDlg = Application.FileDialog(msoFileDialogFilePicker)
    If xFileDlg.Show = -1 Then
        With xMailOut
            .BodyFormat = olFormatRichText
            .To = "happy.xuebi@163.com"
            .Subject = "test"
            .HTMLBody = "test"
            For Each xFileDlgItem In xFileDlg.SelectedItems
                .Attachments.Add xFileDlgItem
            Next xFileDlgItem
            .Display
        End With
    End If
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

Observação: especifique o destinatário do e-mail, o assunto e o corpo alterando as variáveis em .To = happy.xuebi@163.com, .Subject = "test" e .HTMLBody = "test" nas linhas do código.

6. Pressione as teclas Alt + Q juntas para sair da janela Microsoft Visual Basic for Applications.

7. Clique em Desenvolvedor > Modo de Design para desativar o Modo de Design. Veja a captura de tela:

Click Design Mode to turn off the Design Mode

8. Clique no Botão de Comando para executar o código. Na janela Procurar que aparece, selecione os arquivos que você precisa anexar ao e-mail e depois clique no botão OK. Veja a captura de tela:

run code to select the files you need to attach in the email

9. Em seguida, um e-mail será criado com os campos especificados e os anexos listados. Por favor, clique no botão Enviar para enviá-lo. Veja a captura de tela:

an email is created with specified fields and attachments listed out

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


Envie facilmente e-mails pelo Outlook com base nos campos da lista de envio criada no Excel:

O Enviar Email utilitário do Kutools para Excel ajuda os usuários a enviar e-mails pelo Outlook com base na lista de envio criada no Excel.
Baixe e experimente agora! (30-dia de teste grátis)

send email with attachments by kutools


Artigos relacionados:

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!