Group:  Microsoft Word ยป microsoft.public.word.mailmerge.fields
Thread: When using Mail Merge to Email, how can you attach documents?

When using Mail Merge to Email, how can you attach documents?
amanda 11/24/2008 8:59:01 PM
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.
Re: When using Mail Merge to Email, how can you attach documents?
"Doug Robbins - Word MVP" <dkr[ at ]REMOVECAPSmvps.org> 11/24/2008 9:59:04 PM
See the article "Mail Merge to E-mail with Attachments"
at:http://word.mvps.org/FAQs/MailMerge/MergeWithAttachments.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" <amanda[ at ]discussions.microsoft.com> wrote in message
news:EF87FBE6-F494-4028-ABD1-ACA69DB3CC88[ at ]microsoft.com...
[Quoted Text]
>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.


Re: When using Mail Merge to Email, how can you attach documents?
David B 12/26/2008 6:16:10 PM
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:

[Quoted Text]
> See the article "Mail Merge to E-mail with Attachments"
> at:http://word.mvps.org/FAQs/MailMerge/MergeWithAttachments.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" <amanda[ at ]discussions.microsoft.com> wrote in message
> news:EF87FBE6-F494-4028-ABD1-ACA69DB3CC88[ at ]microsoft.com...
> >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.
>
>
>
Re: When using Mail Merge to Email, how can you attach documents?
"Doug Robbins - Word MVP" <dkr[ at ]REMOVECAPSmvps.org> 12/26/2008 8:28:28 PM
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 B[ at ]discussions.microsoft.com> wrote in message
news:F5819F6D-BEB8-41C6-85B6-EE26B73DDE1D[ at ]microsoft.com...
[Quoted Text]
> 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/MergeWithAttachments.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" <amanda[ at ]discussions.microsoft.com> wrote in message
>> news:EF87FBE6-F494-4028-ABD1-ACA69DB3CC88[ at ]microsoft.com...
>> >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.
>>
>>
>>


Home | Search | Terms | Imprint
Newsgroups Reader