Why is email being sent even though I have .Display turned on

SteveL13
SteveL13 used Ask the Experts™
on
I have the following code in place for an onclick event of a command button.  The mail event is working fine EXCEPT it is not allowing me to preview the email before it gets sent.  Can someone figure out why?

    Dim oOutlook As Object
    Dim appOutLook As Outlook.Application
    Dim MailOutLook As Outlook.MailItem
    Dim strPath As String
    Dim strFilter As String
    Dim strFile As String
    Dim strAttachmentFolderDataPath As String

    On Error Resume Next
    Set oOutlook = GetObject(, "Outlook.Application")
    On Error GoTo 0

    If oOutlook Is Nothing Then
        MsgBox "Outlook is not open, open Outlook and try again"
    Else

    'Email routine...
    strPath = DLookup("AttachmentDirectory", "LOCALtblDatabaseSetup") & "\" & Me.txtContractN

    strFilter = "*.pdf"
    strFile = Dir(strPath & strFilter)

        Set appOutLook = CreateObject("Outlook.Application")
        Set MailOutLook = appOutLook.CreateItem(olMailItem)

        With MailOutLook
            .BodyFormat = olFormatRichText
            .To = "somebody@somewhere.com"
            ''.cc = ""
            ''.bcc = ""
            .Subject = "Report Attached"
            .HTMLBody = "Report Attached"
            .Attachments.Add strPath & "\Report.PDF"
            .Display
            .Send
        End With
    'End of email routine

    End If

Open in new window

Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Fabrice LambertConsulting
Distinguished Expert 2017

Commented:
Simple:
The display method is not a blocking instruction, so the window close as soon as you send it.
AlanConsultant

Commented:
Hi,

If you add, say, a MsgBox after the .display, before the .send then you can give the user the option.  Something like:

If MsgBox("Okay to Send?),vbYesNo) = vbYes then

    MailOutlook.Send

End If

Open in new window



Alan.
Infotrakker Software
Most Valuable Expert 2012
Top Expert 2014
Commented:
Remove this line:

.Send

The .Display line should show the user the email, and allow them to send it manually.

Author

Commented:
Thank you. Pretty obvious and I missed it.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial