Acesse MsgBox para email automatizado

1

Eu tenho um banco de dados de acesso configurado com código VBA para um botão de comando sim / não para enviar um email automatizado do Outlook. Se o usuário selecionar Sim, ele abrirá o email para permitir anexos.

Meu problema é que, quando o usuário seleciona não, a mensagem não desaparece e envia o e-mail como solicitado, mas, em vez disso, faz a pergunta novamente para uma segunda resposta antes de enviar o e-mail. Eu tentei colocar um "final" na segunda metade do código em vários lugares, mas nada parece funcionar. Sugestões seriam muito apreciadas!

Código abaixo:

Private Sub Command2064_Click()

Const cstrPrompt As String = _
    "Do you want to add an attachment to your audit feedback?"
If MsgBox(cstrPrompt, vbQuestion + vbYesNo) = vbYes Then

'******begin code******
Dim olApp As Object
   Dim objMail As Object

   Set olApp = GetObject(, "Outlook.Application") 'See if Outlook is open

   'Create e-mail item
   Set objMail = olApp.CreateItem(olMailItem)

'***creates and sends email
With objEmail
    With objMail
     .To = Me.Combo0 & "" & "@myemail.com"
     '.Cc = "[email protected]"
     .Subject = "Audit Correction Needed"
     .Body = Me.Text136 & "          " & "          " & Me.Combo154 & "                    " & Me.Text1677
     .Display
     End With
     End

End With
End If


If MsgBox(cstrPrompt, vbQuestion + vbYesNo) = vbNo Then

  Set olApp = GetObject(, "Outlook.Application") 'See if Outlook is open
  'Create e-mail item
   Set objMail = olApp.CreateItem(olMailItem)
  '***creates and sends email
With objEmail
    With objMail
     .To = Me.Combo0 & "" & "@myemail.com"
     '.Cc = "[email protected]"
     .Subject = "Audit Correction Needed"
     .Body = Me.Text136 & "          " & "          " & Me.Combo154 & "                    " & Me.Text1677
     .send
     End With


End With


  MsgBox "Audit Correction Email has been sent. You must now select the Send to Tracking Sheet button."

End If
End Sub
    
por InNeedOfHelp 23.06.2016 / 19:00

1 resposta

2

Eu respondi minha própria pergunta - tudo que eu tinha que fazer era remover o código duplicado na minha segunda instrução If.

MsgBox(cstrPrompt, vbQuestion + vbYesNo) =

    
por 23.06.2016 / 20:34