MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Erro envio pelo Outlook

    Compartilhe

    Roberto_1977
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 836
    Registrado : 01/10/2013

    [Resolvido]Erro envio pelo Outlook

    Mensagem  Roberto_1977 em Sex 22 Jul 2016, 14:39

    Boa tarde,

    Hoje atualizei meu PC para windows 10 e um programinho que tinha criado para enviar emails deixo de funcionar.
    Este programa trabalhava sem problemas até instalar windows 10.

    Ele trava na para do ".To"

    Alguem para dar uma dica?

    Private Sub Command236_Click()
    Dim appOutlook As Object
    Dim olMail As Object
    Dim outItem As Object
    Text234.Value = "Enc. " & [Ord#Venda] & " - " & "Artigo - " & [Mat#(Ref#C] & " - " & "Item - " & Item
    If Time$ < #12:00:00 PM# Then
    Text237.Value = "Bom dia,"
    Else
    Text237.Value = "Boa tarde,"
    End If
    If InStr(Nome_Cliente_Final, "RENE") <> 0 Then
    MsgBox "Não esqueçer enviar relatório para " & Me.Nome_Cliente_Final, vbInformation, "Info"
    End If
    If MsgBox("Confirma o envio do e-mail da encomenda " & " - " & [Ord#Venda], vbInformation + vbYesNo, Me.[Mat#(Ref#C]) = vbYes Then
    'Verifica se Outlook está aberto. Caso não esteja, criar nova instância
    On Error Resume Next
    Set appOutlook = GetObject(, "Outlook.Application")
    If appOutlook Is Nothing Then
    Set appOutlook = CreateObject("Outlook.Application")
    End If
    On Error GoTo 0

    Set olMail = appOutlook.CreateItem(0) '0 é um item de e-mail

    With olMail
    .To = Me.Text207
    .CC = "" & Me.Text209
    .Subject = Me.Nome_Cliente_Final
    .Attachments.Add (CurrentProject.Path & "\" & "teste.xlsx")
    .Body = Me.Text237 + vbNewLine + vbNewLine + Me.Text234.Value + vbNewLine + "OK para expedir." + vbNewLine + "Obrigado." + vbNewLine + vbNewLine + vbNewLine + "Roberto" + vbNewLine + "Área Medição" + vbNewLine + vbNewLine + vbNewLine + " ****** Email enviado em modo automático pelo sistema ****** "
    .Send '.Display (ver email no outlook)
    End With
    MsgBox "Email enviado com sucesso." & vbCrLf & "Para: " & Me.Text207.Value & vbCrLf & "Cc: " & Me.Text209.Value, vbInformation, "Email"
    Check199.Value = -1
    Else
    MsgBox "Operação abortada...", vbExclamation, "Info"
    End If
    Combo203.Value = Null
    Combo205.Value = Null
    Text207.Value = ""
    Text209.Value = ""
    Command236.Enabled = False
    DoCmd.Requery
    End Sub


    .................................................................................
    Para saber como marcar tópico como [Resolvido] Click Aqui [Você precisa estar registrado e conectado para ver esta imagem.]

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3217
    Registrado : 15/03/2013

    Re: [Resolvido]Erro envio pelo Outlook

    Mensagem  ahteixeira em Ter 06 Set 2016, 19:15

    Olá Roberto,
    Vejo que já resolveu.
    Pode partilhar onde estava o problema.
    Os membros do fórum agradecem.
    Abraço

    Roberto_1977
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 836
    Registrado : 01/10/2013

    Re: [Resolvido]Erro envio pelo Outlook

    Mensagem  Roberto_1977 em Qua 07 Set 2016, 10:12

    Bom dia,
    Desculpem por não ter postado a resposta ao meu erro.
    Vou postar o código com alteração que fiz para ficar a funcionar.
    Não percebi muito bem o porque que foi preciso essa alteração, mas assim ficou a funcionar.

    Private Sub Command236_Click()
    Dim appOutlook As Object
    Dim olMail As Object
    Dim outItem As Object
    Dim EnvioTO As String
    Dim EnvioCC As String
    Dim Enviosub As String
    Dim EnvioBody As String

    Text234.Value = "Enc. " & [Ord#Venda] & " - " & "Artigo - " & [Mat#(Ref#C] & " - " & "Item - " & Item
    If Time$ < #12:00:00 PM# Then
    Text237.Value = "Bom dia,"
    Else
    Text237.Value = "Boa tarde,"
    End If
    If InStr(Nome_Cliente_Final, "RENE") <> 0 Then
    MsgBox "Não esqueçer enviar relatório para " & Me.Nome_Cliente_Final, vbInformation, "Info"
    End If
    If MsgBox("Confirma o envio do e-mail da encomenda " & " - " & [Ord#Venda], vbInformation + vbYesNo, Me.[Mat#(Ref#C]) = vbYes Then
    'Verifica se Outlook está aberto. Caso não esteja, criar nova instância
    On Error Resume Next
    Set appOutlook = GetObject(, "Outlook.Application")
    If appOutlook Is Nothing Then
    Set appOutlook = CreateObject("Outlook.Application")
    End If
    On Error GoTo 0

    Set olMail = appOutlook.CreateItem(0) '0 é um item de e-mail

    With olMail
    EnvioTO = Me.Text207
    EnvioCC = "" & Me.Text209
    Enviosub = Me.Nome_Cliente_Final
    EnvioBody = Me.Text237 + vbNewLine + vbNewLine + Me.Text234.Value + vbNewLine + "OK para expedir." + vbNewLine + "Obrigado." + vbNewLine + vbNewLine + vbNewLine + "Roberto" +
    vbNewLine + "Área Medição" + vbNewLine + vbNewLine + vbNewLine + " ****** Email enviado em modo automático pelo sistema ****** "
    .To = EnvioTO
    .CC = EnvioCC
    .Subject = Enviosub

    '.Attachments.Add (CurrentProject.Path & "\" & "teste.xlsx")
    .Body = EnvioBody
    .Send '.Display (ver email no outlook)
    End With
    MsgBox "Email enviado com sucesso." & vbCrLf & "Para: " & Me.Text207.Value & vbCrLf & "Cc: " & Me.Text209.Value, vbInformation, "Email"
    Check199.Value = -1
    Else
    MsgBox "Operação abortada...", vbExclamation, "Info"
    End If
    Combo203.Value = Null
    Combo205.Value = Null
    Text207.Value = ""
    Text209.Value = ""
    Command236.Enabled = False
    DoCmd.Requery
    End Sub


    .................................................................................
    Para saber como marcar tópico como [Resolvido] Click Aqui [Você precisa estar registrado e conectado para ver esta imagem.]

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3217
    Registrado : 15/03/2013

    Re: [Resolvido]Erro envio pelo Outlook

    Mensagem  ahteixeira em Qua 07 Set 2016, 12:18

    Olá Roberto,
    Talvez o "option explicit" estivesse presente.
    No entanto, obrigado pelo retorno.
    Os utilizadores do fórum agradecem.
    Abraço

      Data/hora atual: Sex 09 Dez 2016, 13:29