MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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

    [Resolvido]Integração Outlook

    avatar
    guidopignatti
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12
    Registrado : 10/09/2018

    [Resolvido]Integração Outlook Empty [Resolvido]Integração Outlook

    Mensagem  guidopignatti 11/3/2020, 13:27

    Tenho um código abaixo para integração do access com o outlook. Está dando certo desde então.
    No trecho abaixo, em questão, acredito que está dando erro pois tem processo que o [NOME CLIENTE] (que é uma lista) possui vários clientes. Quando é um cliente só, o código está dando certo, mas quando são vários não.

    Como posso resolver isso? Obrigado.

    Trecho:

    pnome = Forms!frm_Compromissos![NOME CLIENTE].Column(2)

    [...]

    With objItem
       
       .Start = CDate(Me.DataVencimento) + CDate(Me.Horario)
       '.Duration = Me.txtDuration * Me.ogDuration
       .Subject = Me.Categorias.Column(1) & ": - " & pnome & " - " & Me.Assunto & vbNullString
       .Body = Me.Descricao & vbNullString


    Segue o códio completo:

    Código:
    Private Sub Form_AfterUpdate()

    On Error GoTo Err_Form_AfterUpdate

    Dim objOl As Outlook.Application
    Dim objItem As Outlook.AppointmentItem
    Dim blnOlRunning As Boolean
    Dim pnome As String

    pnome = Forms!frm_Compromissos![NOME CLIENTE].Column(2)

    On Error Resume Next

    blnOlRunning = True

    Set objOl = GetObject(, "Outlook.Application")

      If Err <> 0 Then
         Set objOl = CreateObject("Outlook.Application")
         blnOlRunning = False
         Err.Clear
      End If

    On Error GoTo 0

    Set objItem = objOl.CreateItem(olAppointmentItem)

    With objItem
       
       .Start = CDate(Me.DataVencimento) + CDate(Me.Horario)
       '.Duration = Me.txtDuration * Me.ogDuration
       .Subject = Me.Categorias.Column(1) & ": - " & pnome & " - " & Me.Assunto & vbNullString
       .Body = Me.Descricao & vbNullString
       
       
       If Len(Me.DataVencimento & vbNullString) > 0 Then    'Len(Me.txtReminder & vbNullString) > 0 Then (texto original)
           .ReminderSet = True        '.ReminderMinutesBeforeStart = Me.txtReminder * Me.ogPeriod (texto original)
           .ReminderMinutesBeforeStart = 60
       Else
           .ReminderMinutesBeforeStart = 0
           .ReminderSet = False
       End If
       
       .Save
    End With

      If blnOlRunning = True Then
         ' display the new item
         objItem.Display
      Else
         objOl.Quit
      End If



    Exit_Form_AfterUpdate:
       Set objItem = Nothing
       Set objOl = Nothing
       Exit Sub


    Err_Form_AfterUpdate:
       Select Case Err
       
       Case 0
       
       Case Else
           MsgBox Err.Description
           Resume Exit_Form_AfterUpdate
       End Select


    End Sub


    Última edição por guidopignatti em 12/2/2021, 16:08, editado 1 vez(es)
    avatar
    Josealdo
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 154
    Registrado : 14/12/2012

    [Resolvido]Integração Outlook Empty Re: [Resolvido]Integração Outlook

    Mensagem  Josealdo 12/2/2021, 15:43

    Olá @guidopignatti, acabei de resolver um problema similar onde eu preciso enviar o mesmo email para um grupo. Não ficou como eu queria, mas criei uma tabela com o campo onde coloquei todos os emails nesse campo e mandei buscar o endereço no campo dessa tabela.

    Se no seu caso for tipo uma mala direta, acredito que a melhor forma seria via recordset, mais não tenho habilidades com o recordset mais não parece ser dificil.

    Aqui no forum tem alguns topicos sobre envios de emails..

    Qualquer coisa comente para tentarmos ajudar.

    Sucesso.

      Data/hora atual: 23/6/2021, 07:29