Embed a .jpg picture in an email with VBA - truble passing from Outlook 2000 to 2003.

Hi I have developed a simple function that work perfectly with Access-Outlook 2000, but not with Access 2000-Outlook 2003.
It does everything but does not embed the image I would insert in preview with the line:
oHTML = "<HTML><Head></Head><Body><img SRC='" & oLettera & "' width=800 height=1130></Body></HTML>"
I have tried to insert CID parameters and other stuff, but with no result. Can you help, please?
Public Function InviaOutlookMailCampagne(oDestinatario As String, oOggetto As String, oLettera As String, oAllegato As String)
 
    Dim olkApp As Object, olkMsg As Object
    Dim oFile As String
    Dim oHTML As String
    Set olkApp = GetObject(, "Outlook.Application")
    '
    Set olkMsg = olkApp.CreateItemFromTemplate("L:\9.1.Campagne\Lettere\Modello emailing.oft")
    
    oHTML = "<HTML><Head></Head><Body><img SRC='" & oLettera & "' width=800 height=1130></Body></HTML>"
    
    With olkMsg
            .To = oDestinatario
            .Subject = oOggetto
            .HTMLBody = oHTML
            '.body = oMessaggio
            '.Attachments.Add oLettera
            .Attachments.Add oAllegato
            .Save
    End With
    '
    Set olkMsg = Nothing
    Set olkApp = Nothing
    '
 
End Function

Open in new window

LVL 9
Sar1973Asked:
Who is Participating?
 
Jeffrey CoachmanConnect With a Mentor MIS LiasonCommented:
Sar1973,

<img SRC=C:\File.jpg>
... worked fine for me.

As I said, test it out to be sure.

JeffCoachman
0
 
Jeffrey CoachmanMIS LiasonCommented:
Sar1973,

Try this code.
It is straight from the MS website.

It works fine for me.

Please verify that it works "As Is".
Then try to adapt it to work in your Application.

You must set a reference to the Outlook Object Library in your VBA Editor.

JeffCoachman

Sub sbSendMessage()
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")
' 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("Recipient Name")   '<--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 = "This is an Automation test with Microsoft Outlook"      '<--Subject
        '.Body = "This is normal Text in the Body of the email"              '<--Email Body text.
        'Use this to send the Email using the HTML Format
        '.HTMLBODY = "<HTML><H2><b>This is HTML Text in the BODY of the email</b></H2></HTML>"
        .HTMLBODY = "<HTML><Head></Head><Body><img SRC=c:\earth.jpg></Body></HTML>"
 
        .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
 
Jeffrey CoachmanMIS LiasonCommented:
Of course change the HTLM and add your own image and path.
0
 
Sar1973Author Commented:
Definitely, the syntax is <img SRC=C:\File.jpg> and not <img SRC='C:\File.jpg'> ...?
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.