View Single Post
  #4   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Doug Robbins - Word MVP Doug Robbins - Word MVP is offline
external usenet poster
 
Posts: 8,832
Default When using Mail Merge to Email, how can you attach documents?

You have failed to set the reference to the Outlook Object Library as
detailed in the preparations section of the article.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"David B" David wrote in message
...
Dear Doug~

When I try to run this macro, VBE stops and says the following code in the
5th line Dim oOutlookApp As Outlook.Application is "user-defined type
not
defined" -- ??

~David

"Doug Robbins - Word MVP" wrote:

See the article "Mail Merge to E-mail with Attachments"
at:
http://word.mvps.org/FAQs/MailMerge/...hments.htmNote that
I
recently updated that article and have since discovered that there is a
minor error that will cause the last person to whom a message is sent to
receive a second blank email. Therefore, use the following code rather
than
that in the article:Sub emailmergewithattachments()Dim Source As
Document,
Maillist As Document, TempDoc As Document
Dim Datarange As Range
Dim i As Long, j As Long
Dim bStarted As Boolean
Dim oOutlookApp As Outlook.Application
Dim oItem As Outlook.MailItem
Dim mysubject As String, message As String, title As StringSet Source =
ActiveDocument' Check if Outlook is running. If it is not, start Outlook
On Error Resume Next
Set oOutlookApp = GetObject(, "Outlook.Application")
If Err 0 Then
Set oOutlookApp = CreateObject("Outlook.Application")
bStarted = True
End If' Open the catalog mailmerge document
With Dialogs(wdDialogFileOpen)
.Show
End With
Set Maillist = ActiveDocument' Show an input box asking the user for the
subject to be inserted into the email messages
message = "Enter the subject to be used for each email message." ' Set
prompt.
title = " Email Subject Input" ' Set title.
' Display message, title
mysubject = InputBox(message, title)' Iterate through the Sections of the
Source document and the rows of the catalog mailmerge document,
' extracting the information to be included in each email.
For j = 1 To Source.Sections.Count - 1
Set oItem = oOutlookApp.CreateItem(olMailItem)
With oItem
.Subject = mysubject
.Body = Source.Sections(j).Range.Text
Set Datarange = Maillist.Tables(1).Cell(j, 1).Range
Datarange.End = Datarange.End - 1
.To = Datarange
For i = 2 To Maillist.Tables(1).Columns.Count
Set Datarange = Maillist.Tables(1).Cell(j, i).Range
Datarange.End = Datarange.End - 1
.Attachments.Add Trim(Datarange.Text), olByValue, 1
Next i
.Send
End With
Set oItem = Nothing
Next j
Maillist.Close wdDoNotSaveChanges' Close Outlook if it was started by
this
macro.
If bStarted Then
oOutlookApp.Quit
End IfMsgBox Source.Sections.Count - 1 & " messages have been
sent."'Clean
up
Set oOutlookApp = NothingEnd Sub
--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"amanda" wrote in message
...
I am using Office 2003 and pretty well versed in Mail Merge to
Outlook...
but
I can't figure or find a way to add attachments to the letter. I need
to
send the word document as HTML email with 2 other Word documents as
attchments.