Como enviar mensagens de Whatsapp pelo Excel

como-enviar-mensagens-whatsapp-pelo-excel

Aprenda no post de hoje “Como enviar mensagens de Whatsapp pelo Excel”, de forma intuitiva e completa. A função pode parecer um pouco complicada, e não muito simples. Portanto, preste muita atenção em cada linha desse post para que você consiga executar com êxito o seu código. Não é um procedimento fácil igual as outras dicas que disponibilizamos aqui, porém tendo atenção e executando passo a passo terá sucesso na execução do procedimento.

Contudo, é necessário que você acesse o Whatsapp Web. Mas caso não saiba como fazer isso, existe uma explicação passo a passo clicando aqui. É bem rápido, e leva pouco tempo para colocar o Whatsapp no navegador.

Em seguida, acompanhe agora o passo a passo do procedimento e faça tudo conforme ensinado no desenvolver do código.

Programas Necessários:

  • Excel versão 2010 ou Superior
  • Google Chrome
  • Windows 7 ou superior

IMPORTANTE: O CÓDIGO SÓ ENVIA MENSAGEM PARA APENAS UM ÚNICO CONTATO!

No entanto, caso queira baixar a planilha de automatização, você pode descer até o final da página e clicar em Download.

Passo a Passo de Como enviar mensagens de Whatsapp pelo Excel

Vale a pena lembrar que a planilha estará sendo disponibilizada ao término do post. No entanto, é necessário fazer ajustes para que também funcione em sua máquina. Além disso é necessário Excel instalado em seu computador. E tal ajustes requer um conhecimento em VBA(linguagem de programação do pacote Office) ou você pode tentar se orientar pelo post. E você deve habilitar também a guia desenvolvedor, se não sabe como fazer isso, assista ao vídeo:

Obs: Não criamos ou vendemos planilhas personalizadas desse âmbito, portanto os pedidos recebidos na área de orçamento serão desconsiderados. O código requer alterações de máquina para máquina.

Criamos uma planilha, para então demonstrarmos como será feito. Logo abaixo é possível ver o campo contato, onde você digitará de FORMA IDÊNTICA ao contato que está salvo em seu whatsapp(não digite o número, somente o nome).

Como enviar mensagens de Whatsapp pelo Excel

Após isso você vai inserir um botão, indo na aba desenvolvedor do Active X.

Como enviar mensagens de Whatsapp pelo Excel

Porém caso, essa opção de Desenvolvedor não apareça, você deve habilitar nas opções do Excel. Clique em Arquivo > Opções > Personalizar Faixa de Opções >

Como enviar mensagens de Whatsapp pelo Excel

Em seguida, clique no botão criado e em “Exibir Código”. E aparecerá uma tela branca, com já alguns códigos. É nessa área onde nós iremos criar nosso código:

Como enviar mensagens de Whatsapp pelo Excel
O fundo está em preto porque personalizamos

Iniciando os Códigos

O primeiro passo é nós declararmos as variáveis, que consiste de nós não esquecermos de digitar de forma equivocada. Assim quando nós atribuirmos uma variável errada ou esquecermos, simplesmente resultará em um erro para seja feito a correção.

Como enviar mensagens de Whatsapp pelo Excel
Como enviar mensagens de Whatsapp pelo Excel

Código:

'Declaração de variáveis
Dim texto1 As String
Dim txt As String
Dim contato As String 'Primeiro nome do contato
Dim numero As Integer
Dim linha As Integer

Após isso, teremos que “dizer para o Excel” se existe ao menos 1 contato em nossa lista. Vamos usar então o código range, que serve para indicar a linha e a coluna. E em seguida, o “Message Box” que tem como função exibir uma mensagem na tela dizendo que temos que preencher com contatos. Em sua planilha é importante verificar em qual célula inicia a lista de seus contatos. Nessa planilha, é a célula E10.

Como enviar mensagens de Whatsapp pelo Excel

Código:

'Verificar se existe pelo menos 1 contato salvo na agenda
If Range("E10").Value = "" Then
    MsgBox "Digite ao menos 1 contato na sua lista", 64, "Smart Planilhas"
    Exit Sub
End If

Feito isso, vamos agora, fazer o Excel abrir o Whatsapp Web, para posteriormente então, enviar a mensagem.

Como enviar mensagens de Whatsapp pelo Excel
Envio da mensagem

Os códigos que começam com apóstofro(‘), significa que o código está desativado. Por padrão ali ficou no Google Chrome, caso use um navegador diferente, pesquise corretamente o nome do seu navegador e no lugar de Chrome coloque o nome do seu navegador. No código que iniciar com Shell.
Logo depois veja que só inserimos a URL(nome do site que irá acontecer a ação de envio), e após isso só selecionamos o tempo para isso acontecer. É bom deixar os valores de tempo como estão, para não acontecer nenhuma divergência na compilação.

Código:

Sheets(1).Select

'Abre o navegador Chrome/Mozila/Opera, depede do navegador usado
'Shell "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ' & "https://web.whatsapp.com/"

'Call SendKeys("https://web.whatsapp.com/", True)
Dim URL As String
URL = "https://web.whatsapp.com"
ActiveWorkbook.FollowHyperlink URL

'Esperar um tempo para abrir
Application.Wait (Now + TimeValue("00:00:03"))
Códigos Finais

Agora vamos para última etapa de nosso processo de automatização de mensagens. Os códigos a seguir são para realizar o envio, e estimular o tempo para isso acontecer. Portanto, para entender é necessário um conhecimento intermediário de VBA. Mas copie e cole caso seja necessário.

O código é extenso, e difícil de explanar com detalhes simples, portanto essa parte final talvez seja a única que você precise apenas copiar.

Código:

Código:

'Enviar mensagem equanto tiver contato na lista
Do Until Range("E" & linha).Value = ""
    'Application.Wait (Now + TimeValue("00:00:02"))
    contato = Range("E" & linha).Value
    'numero = Range("E" & linha).Value
    texto1 = "Olá " & contato & ", " & " " & Range("H" & linha).Value
        'ActiveSheet.Shapes.Range(Array("tomada")).Select
        'Selection.Copy

    Application.Wait (Now + TimeValue("00:00:04"))

    Call SendKeys("{TAB}")
    Call SendKeys("{TAB}")
    Call SendKeys("{TAB}")
    Call SendKeys("{TAB}")
    Application.Wait (Now + TimeValue("00:00:02"))
    Call SendKeys(contato, True)
    Application.Wait (Now + TimeValue("00:00:02"))
    Call SendKeys("{ENTER}", True)

    Application.Wait (Now + TimeValue("00:00:05"))
    Call SendKeys(texto1, True)
    'Call SendKeys("^v", True)
    Application.Wait (Now + TimeValue("00:00:03"))
    Call SendKeys("{ENTER}", True)
    linha = linha + 1
    Call SendKeys("{TAB}")
    Application.Wait (Now + TimeValue("00:00:02"))
    Call SendKeys("{TAB}")
    Application.Wait (Now + TimeValue("00:00:02"))
 Loop
End Sub

O código SenKeys(“{TAB}”) tem como objeteivo “apertar” automaticamente a tecla “TAB”. No entanto, o Whatsapp passa constantemente por atualizações. Dessa forma, dependendo de quantas opções você têm disponível em sua tela, poderá ser que o Excel tenha que clicar mais ou menos vezes na tecla “TAB”.

Veja o resultado:

E aqui acaba o nosso procedimento de automatização. E como prometido, você pode baixar a planilha logo abaixo:

DOWNLOAD

Ficou com dúvidas? Assista o vídeo abaixo:

O código foi verificado e testado, portanto, se está havendo algum erro em sua máquina, possa ser por código digitado de maneira equivocada ou não seguiu os passos conforme os posts. Para obter êxito com o código, é necessário um prévio conhecimento em VBA. Porquanto possa ser dificultoso para iniciantes ou até mesmo para alguns com mais experiência.

É válido lembrar também, que você não deve usar ela no Google Sheets. Porquanto só funciona no Excel. É necessário baixa-la.

Por fim, caso tenha gostado do nosso post, aproveite para conhecer nossas dezenas de planilhas.

Nota: post atualizado em 01/12/2022

21 thoughts on “Como enviar mensagens de Whatsapp pelo Excel

  1. Isnar says:

    Bom dia;

    Gostei muito da aplicação em VBA, tenho conhecimento muito básico, mas estou praticando. Tenho uma planilha de clientes e preciso que os clientes vencidos eu passa enviar mensagem de cobrança pelo whatsapp. O código não deu certo por enquanto, gostaria que me enviasse a planilha para que possa verificar onde errei, obrigado.

  2. Diego Moralles Dias says:

    Guilherme eu também não consegui enviar, acho que ficou faltando você colocar o que é o CONTATO. É uma lista? é um outro TXT? é uma coluna do excel?

    O Codigo está bem claro e bem escrito, mas realmente eu não entendi onde inserir o telefone da pessoa.

  3. Cinthia Santos says:

    Identifiquei um “Call SendKeys(“{TAB}”)” a mais após “linha = linha + 1”, isso não estava fazendo o código encontrar o segundo contato da lista. Mas mesmo depois de comentar no código, o segundo contato ainda não recebe a mensagem. Poderiam verificar por favor?

    • Diana says:

      Olá, precisa ajustar essa linha do código, se não não vai mensagem pro contato seguinte:
      de:
      texto1 = “Olá ” & contato & “, ” & ” ” & Range(“H” & Linha).Value
      para:
      texto1 = “Olá ” & contato & “, ” & ” ” & Range(“H” & 10).Value

      Fiz isso e resolveu o problema.

      Também inseri:

      linha = 10

      Antes de:
      ‘Enviar mensagem enquanto tiver contato na lista
      Do Until

      Também mexi nos tempos.

      Agora está tudo funcionando.
      Espero ter ajudado!

    • Guilherme Maciel says:

      Olá, boa tarde Fernanda. Esse post é mais intrutivo e demonstrando um pouco mais fundo o que é o Excel. Nesse modelo não tem como adicionar caracteres especiais mesmo. Teria que adicionar uns códigos a mais, para repelir esse conflito.

  4. jbatistamusic says:

    Boa Tarde!

    Baixei o sistema e está dando erro no… Sheets(“Planilha1”).Select fica amarelo e diz que. (“Planilha1< A variável do Objeto ou A variável do bloco 'With' não foi definida ).

    se puderem me ajudar.
    desde já agradeço.

    • Guilherme Maciel says:

      Olá, boa tarde. Você chegou a baixar a planilha? Não é Sheets(“nome da planilha”). Nós usamos um código diferente, onde o Excel seleciona pela ordem a planilha. No caso do post ali, foi usado Sheets(1), ou seja a primeira aba. E pode ver que o nome está como “Planilha1”. Portanto, resumindo, É Sheets(1) e não Sheets(nome da planilha). Também, é comum os erros de não serem enviadas as mensagens. Pois tem alguns que possuem extensões e na hora de o Excel apertar a tecla “TAB” ele acaba selecionando o campo errado.

    • Guilherme Maciel says:

      Opa levi, tudo bem? Tem como sim. Porém o código iria mudar. Você usaria o seguinte comando:

      Dim arquivo As String
      arquivo = “C:\nome_do_arquivo.xlsx”
      Workbooks.Open (arquivo)

      Ao invés de fazermos URL As string, colocamos o nome como o arquivo. Selecionamos o local do arquivo (o que varia de computador para computador) e faz ele abrir o Whatsapp com o comando: Workbooks.Open (arquivo)

Deixe um comentário