none
erro de compilação o tipo definido pelo usuário não foi definido RRS feed

  • Pergunta

  • Eu não entendo muito de VBA porem estou fazendo uma Planilha e queria executar esse comando, porem esta me dando erro.

    Alguém poderia me ajudar, estou tentando criar um planilha de chamados e encaminhar e-mails para meu e-mail de suporte e para o cliente, da esse erro "erro de compilação o tipo definido pelo usuário não foi definido" e segue abaixo o comando.

    Sub Botão7_Clique() - E nessa linha fica Grifado amarelo conforme o erro esta nela.
    Dim objEmail As clsEmail
    Dim sh As Worksheet
    On Error GoTo Erro_Sub
     
        Set objEmail = New clsEmail     'Inicializa a classe clsEmail
        Set sh = Sheets("Plan1")        'Define a planilha
     
        With objEmail
            .setConfEmailServidor = "smtp.lemonits.com.br"       'Servidor de saída de emails. Ex: smtp.uol.com.br
            .setConfEmailPorta = "587"                               'Porta. Padrão é a porta 25
            .setConfEmailSSL = False                                'Se necessita conexão segura SSL
            .setConfEmailFrom = "suporte@lemonits.com.br"      'Seu email: O remetente do email. Ex: seunome@uol.com.br
            .setConfEmailSenha = "$up0rt3L3m0n"                        'Sua senha: A senha que você usa para acessar seus emails
            .setConfEmailFromNome = "Suporte - Lemon IT"                      'Seu nome: O nome que será exibido no campo De:
            .Configurar     'Executa a configuração
            .setEmailTo = sh.Range("H4")                            'Email do Destinatário
            .setEmailToNome = sh.Range("B4")                        'Nome do Destinatário
     
            .setEmailTitulo = "Abertura de Chamado Lemon IT"     'Título da mensagem
     
            'Prezado, Seu chamado foi aberto em nosso sistema. Já estamos em análise do mesmo, Aguarde nosso Retorno! Obrigado.
            .setEmailConteudo = "Olá, <strong>" & .getEmailToNome & "</strong>.<br><br>Para mais informações favor acessar <a href=""http://www.lemonits.com.br"">Lemon IT Solutions do Brasil</a>." _
                                & "<br><br>Necessita de Link <a href=""http://www.linkfiber.com.br.com.br"">http://www.linkfiber.com.br</a> e fique conectado."
     
            .EnviarEmail
     
        End With
     
        Set objEmail = Nothing
        Set sh = Nothing
     
        MsgBox "Email enviado com sucesso!", vbInformation
     
    Exit Sub
    Erro_Sub:
        MsgBox Err.Description, vbExclamation
        Exit Sub
    End Sub

    terça-feira, 18 de agosto de 2015 17:34

Respostas

Todas as Respostas

  • Olá,

    Na verdade o erro está na segunda linha

    Dim objEmail As clsEmail

    Ele não está reconhecendo esse tipo clsEmail, está faltando alguma referência ou uma classe neste código.

    Se você tiver outlook na máquina, sugiro utilizar o código do link abaixo

    http://www.microsoftexcel.com.br/index.php/excel-dicas-microsoft-excel-vba/89-excel-vba-envia-email/1344-excel-vba-planilha-email-envia-anexo-e-corpo.html

    • Sugerido como Resposta André Santo terça-feira, 18 de agosto de 2015 18:27
    terça-feira, 18 de agosto de 2015 17:52
  • André Santo 

    Muito Obrigado! Funcionou corretamente, mais preciso de mais uma ajuda sua!

    Como faço para inserir no corpo do e-mail somente uma linha do Excel como posso fazer esse comando?

     

    terça-feira, 18 de agosto de 2015 18:22
  • O corpo do email é definido pela propriedade body. 

    O trecho de código abaixo cola o conteúdo da célula A1 no corpo do Email. 

    .body = Sheets("nomedaabadaplanilha").range("A1").value


    terça-feira, 18 de agosto de 2015 18:27
  • Andre Santo

    Muito Obrigado! Deu certo.

    terça-feira, 18 de agosto de 2015 19:41