View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
JP[_4_] JP[_4_] is offline
external usenet poster
 
Posts: 897
Default Add attachment to an already open Outlook email

Why do you need code to attach a file if the email is open and
presumably displayed on your desktop?

Something like this might work. After setting a reference to the
active Inspector, the .Add method of the Attachments Collection
returns an object reference to the newly added attachment.

Dim olcurrentmail As Outlook.MailItem
Dim olattachments As Outlook.Attachments
Dim newattach As Outlook.Attachment

Set olcurrentmail = ActiveInspector.CurrentItem
Set olattachments = olcurrentmail.Attachments

Set newattach = olattachments.Add("C:\filename.xls")

HTH,
JP


On Apr 15, 4:59*pm, Nathan Berton wrote:
Hi,

I'm trying to use Excel to add an attachment to an Outlook email
that's already been opened in Outlook. *I have code that creates a new
email and adds the attachment, but I want to be able to preserve the
email chain in a reply or add the file after I've already written the
body of the email.

Any help is appreciated! *Thanks! *Here's the code I mentioned that I
already have:

Sub test()
* * Dim filename As String
* * Dim result As Long
* * Dim OutMail As Object
* * Dim OutApp As Object

* * Set OutApp = CreateObject("Outlook.Application")
* * OutApp.Session.Logon
* * Set OutMail = OutApp.CreateItem(0) * * * * * * ' this is the line
I expect needs to be changed.

* * With OutMail
* * * * .To = ""
* * * * .CC = ""
* * * * .BCC = ""
* * * * .Subject = "Emailing: " & ActiveWorkbook.Name
* * * * .Body = ""
* * * * .Attachments.Add Environ("temp") & "\zip\" &
Mid(ActiveWorkbook.Name, 1, Len(ActiveWorkbook.Name) - 4) & ".zip"
* * * * .Display
* * End With
* * Set OutMail = Nothing
* * Set OutApp = Nothing
End Sub