Solved

Email From Access add Priority

Posted on 2010-09-09
8
383 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
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
Windows running painfully slow? Try these tips..

Stay away from Speed Up Computer Programs that do more harm than good.
Try these tips instead.
Step by step instructions in trouble shooting Windows Performance issues.

 
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

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

Suggested Solutions

With User Account Control (UAC) enabled in Windows 7, one needs to open an elevated Command Prompt in order to run scripts under administrative privileges. Although the elevated Command Prompt accomplishes the task, the question How to run as script…
Access developers frequently have requirements to interact with Excel (import from or output to) in their applications.  You might be able to accomplish this with the TransferSpreadsheet and OutputTo methods, but in this series of articles I will di…
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…

752 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