locked
Codigo Para enviar Email usando VB do excel sem especificar o outlook como programa padrão RRS feed

  • Pergunta

  • eu gostaria de saber se existe um codigo q eu possa enviar uma Planilha excel como anexo sem usar as respostas q encontrei aqui onde determinam o Outlook como programa padrão de envio

    Esta Planilha sera usada por varios usuarios e cada um tem seu programa de gerenciamento de email favorito existe como fazer  o excel usar o programa padrão do usuario seja ele qal for?

    sexta-feira, 4 de fevereiro de 2011 03:05

Todas as Respostas

  • O excel não usa sempre o outlook. Ele vai usar o programa default de manipulação de email configurado no computador do usuário.

     


    João Eurico Consultor Manguetown - Brazil
    sexta-feira, 4 de fevereiro de 2011 09:05
  • Certo, eu sou novo em excel com VB então desculpe minha ignorancia, mas  se eu usar os codigos existentes aqui no forum vou conseguir enviar a planilha q eu quero como um anexo para o email normalmente mesmo sendo q o usuario use o Windows Live email ou o thunderbhird  ou qquer gerenciador da preferencia do usuario???
    sexta-feira, 4 de fevereiro de 2011 22:09
  • Rotina cortesia de Rogerio Oliveira, adaptando a sua estrutura talvez lhe possa ser útil.

    'Necessita referencia a Micorsoft CDO for Windows 2000 Library
    Sub sendmail()
    Dim objConfig  As CDO.Configuration
    Dim objMsg   As CDO.Message
      
      Set objMsg = New CDO.Message
      With objMsg
        With .Configuration.Fields
          .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
          .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.<SeuServidor>.com.br" ' ou "mail.server.com"
          .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 'Pode ser 2
          .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "seuEmail@seuDominio.com.br"
          .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "SuaSenha"
          .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 'Este porta geralmente obedece este padrão
          .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False 'Tb é normal este padrão
          .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
          .Update
        End With
        .From = """Aqui é legal"" <" & "Seu email" & ">"
        .Subject = "Seu assunto"
        .HTMLBody = "Aqui vai o corpo de sua mensagem"
        .AddAttachment ("file://" & "Aqui da para enviar um Anexo")
        .To = "mandapramim@email.com.br" 'não preciso comentar para que serve este campo
        'enfim
        .Send
      End With
    
    End Sub
    
    []'s
    David Brigido
    sábado, 5 de fevereiro de 2011 12:25
  • Muito obrigado vou tentar adpatar depois e posto o resultado

    domingo, 6 de fevereiro de 2011 23:25
  • depois de muito procurar cheguei a este codigo

    Dim NovoArquivoXLS As Workbook
    
    Dim sPlanAEnviar As String
    Dim sExcluirAnexoTemporario As String
    Dim wbVoltar As String
    sPlanAEnviar = “Plan1″
    wbVoltar = ThisWorkbook.Name
    Selection.Copy
    Set NovoArquivoXLS = Application.Workbooks.Add
    Windows(NovoArquivoXLS.Name).Activate
    ActiveSheet.Paste Destination:=Worksheets(1).Range(“A1″)
    Application.CutCopyMode = False
    Windows(wbVoltar).Activate
    NovoArquivoXLS.SaveAs ThisWorkbook.Path & “” & sPlanAEnviar & “.xls”
    sExcluirAnexoTemporario = NovoArquivoXLS.FullName
    NovoArquivoXLS.SendMail “email_do_destinatário@email.com”, “Lançar OP”
    NovoArquivoXLS.Close
    Kill sExcluirAnexoTemporario

     

    Este codigo resolveu meu problema de enviar planilha como anexo, porem recebo uma mensagem de alerta do windows que avisa que estou enviado mensagem sem autorização existe alguma outra solução que não a apresentada aqui no Forum no Topico

    http://social.msdn.microsoft.com/Forums/pt-BR/excelpt/thread/1fd9c458-89e4-478f-bc0c-6a8b02232081

    Se alguem Puder Mi ajudar facaria muito agradecido

    domingo, 13 de fevereiro de 2011 23:18