Доступ к MsgBox для автоматической отправки электронных писем

Доступ к MsgBox для автоматической отправки электронных писем

У меня есть Access DB, настроенная с кодом VBA для кнопки команды «да/нет» для отправки автоматизированного письма Outlook. Если пользователь выбирает «Да», письмо открывается для вложений.

Моя проблема в том, что когда пользователь выбирает "нет", сообщение не исчезает и не отправляет электронное письмо, как было предложено, а вместо этого снова задает вопрос для второго ответа перед отправкой электронного письма. Я пробовал помещать "end" во вторую половину кода в разных местах, но ничего не работает. Предложения были бы очень признательны!

Код ниже:

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

решение1

Я сам ответил на свой вопрос — все, что мне нужно было сделать, это удалить дублирующийся код во втором операторе If.

MsgBox(cstrPrompt, vbQuestion + vbYesNo) =

Связанный контент