Solved

Email From Access add Priority

Posted on 2010-09-09
8
370 Views
Last Modified: 2012-05-10
Dear Experts,

I am looking to add in a "High Priority" to an Email generated from Access.  I know there are 2 methods of creating the email - I would like to adapt this piece of code ...

DoCmd.SendObject acSendNoObject, , , Me.email

Rather than the full create outlook object etc (code attached) as I really don't want to have to download a bolt on program such as YesClick Pro to bypass outlook's security
Dim objOutlook As Outlook.Application

Dim objOutlookMsg As Outlook.MailItem

Dim objOutlookRecip As Outlook.Recipient

Dim objOutlookAttach As Outlook.Attachment

 

' Create the Outlook session.

Set objOutlook = CreateObject("Outlook.Application", localhost)

'Set objOutlook = Outlook.Application

' Create the message.

Set objOutlookMsg = objOutlook.CreateItem(olMailItem)

 

    With objOutlookMsg

        ' Add the To recipient(s) to the message. Substitute

        ' your names here.

        Set objOutlookRecip = .Recipients.Add("xxx@hotmail.com")   '<--Recipient's name or email address

 

        objOutlookRecip.Type = olTo

        ' Add the CC recipient(s) to the message.

        'Set objOutlookRecip = .Recipients.Add("CC Recipient Name")

        'objOutlookRecip.Type = olCC

        ' Set the Subject, Body, and Importance of the message.

        .Subject = "Blah Blah Blah"      '<--Subject

        .Body = "Dear Tom" & vbCr & vbCr

        '<--Email Body text.

 

        .Importance = olImportanceHigh  'High importance

        'Add attachments to the message.

        'Set objOutlookAttach = .Attachments.Add("C:\Earth.jpg")             '<-- Add as many attachments as you need here.

        'Set objOutlookAttach = .Attachments.Add("C:\TextFile.txt")

        

        ' Resolve each Recipient's name.

        For Each objOutlookRecip In .Recipients

            If Not objOutlookRecip.Resolve Then

                objOutlookMsg.Display

            End If

        Next

        

        'Send email without viewing it.

        '.Send

        

        'Dispay email before sending.

        .Display

    

    End With

 

'Cleanup Code

Set objOutlookMsg = Nothing

Set objOutlook = Nothing

Set objOutlookRecip = Nothing

Set objOutlookAttach = Nothing

End Sub

Open in new window

0
Comment
Question by:correlate
8 Comments
 
LVL 92

Expert Comment

by:Patrick Matthews
ID: 33638376
You cannot do this directly.

With SendObject, the closest you get is:

DoCmd.SendObject ObjectType:=acSendNoObject, To:=Me.Email, Subject:="Subject, _
    MessageText:="Blah", EditMessage:=True

That brings up the message in the editor window for your installed email program, and from there you can add high priority.

   
0
 

Author Comment

by:correlate
ID: 33638529
Hi,

Thanks for this, sadly its what I expected, would using a template help? (never used them before so I'm clutching at straws here)
0
 
LVL 92

Expert Comment

by:Patrick Matthews
ID: 33638598
Good question!

I'm not sure.  Perhaps you should click 'request attention' and ask the Mods to add the Outlook zone to this question.
0
Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

 
LVL 31

Accepted Solution

by:
Helen_Feddema earned 500 total points
ID: 33639031
I think you will need to use Automation code, since SendObject doesn't let you work with all the properties of the email message.  You can download the Redemption Library from www.dimastr.com, and modify the code to use Redemption objects, to avoid the Object Model Guardian popups:
'Redemption objects and corresponding Outlook objects must

   'be declared as Object type

   Dim omsg As Object

   Dim msg As Object

   

      'Create new mail message and send it now

      Call OpenOutlook

      Set omsg = gappOutlook.CreateItem(olMailItem)

      Set msg = New Redemption.SafeMailItem

      msg.Item = omsg

      

      With msg

         .To = strToEMail

         .Subject = strMessageSubject

         .Body = strBody

         .Send

      End With

      

      'Note:  Messages created with Redemption Library objects

      'are created in the Drafts folder instead of the Outbox,

      'but they will be sent as if from the Outbox.

Open in new window

0
 
LVL 46

Expert Comment

by:tbsgadi
ID: 33659974
You need to use Automation not the SendObject.

To solve the Outlook Security popups, you can use Advanced Security for Outlook
http://www.mapilab.com/outlook/security/

Gary

0
 

Author Closing Comment

by:correlate
ID: 33660783
Hi,

Many thanks for this - sorry it took some time to reply, took a while to get my head around this - but it works
0

Featured Post

Control application downtime with dependency maps

Visualize the interdependencies between application components better with Applications Manager's automated application discovery and dependency mapping feature. Resolve performance issues faster by quickly isolating problematic components.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Adding second domain to Autodiscover - Exchange 2010 26 50
Outlook keeps opened file locked 2 50
OUTLOOK, KERBERO, NTLM 1 25
MS Access Calculation wont work 5 35
Is your Office 365 signature not working the way you want it to? Are signature updates taking up too much of your time? Let's run through the most common problems that an IT administrator can encounter when dealing with Office 365 email signatures.
This article lists the top 5 free OST to PST Converter Tools. These tools save a lot of time for users when they want to convert OST to PST after their exchange server is no longer available or some other critical issue with exchange server or impor…
The viewer will learn how to use the =DISCRINV command to create a discrete random variable, use this command to model a set of probabilities and outcomes in a Monte Carlo simulation, and learn how to find the standard deviation of a set of probabil…
This Experts Exchange video Micro Tutorial shows how to tell Microsoft Office that a word is NOT spelled correctly. Microsoft Office has a built-in, main dictionary that is shared by Office apps, including Excel, Outlook, PowerPoint, and Word. When …

943 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now