Mail Merge from Excel

L

LuisE

I have to recurrently send a workbook to users whom will manipulate the data
in the file and then will run a macro to create a Mail Merge (they have
different versions of Word) based on a template.

I 'm facing some questions:

How can I distribute the word file making sure that I can capture each
user's path in the MailMerge template (the DataSouce file) ?

I'm created a reference to Word 9 wich works fine but doesn't with Word 12,
how can I over come this?

Sub MailMerge()
Dim wdApp As Object
Dim wdDoc As Object
Set wdApp = CreateObject("Word.application")

Set wdDoc = wdApp.Documents.Open(Filename:="C:\Documents\name.dot")


With wdApp
.Visible = True
.ActiveWindow.WindowState = 0
.Activate
End With



With wdDoc.MailMerge
.Destination = wdSendToNewDocument
.MailAsAttachment = False
.MailAddressFieldName = ""
.MailSubject = ""
.SuppressBlankLines = True
With .DataSource
.FirstRecord = 2 'wdDefaultFirstRecord
.LastRecord = wdDoc.MailMerge.DataSource.RecordCount
'wdDefaultLastRecord
End With
.Execute Pause:=True
End With

wdDoc.Close savechanges:=False
Set wdDoc = Nothing
wdApp.Quit
Set wdApp = Nothing
End Sub



Thanks in advance
 
J

JP

You didn't mention where this code is being used. If it is being used
in Excel, and you save the workbook with a reference to the Word 2000
library, then it can be opened in Office 2000 or later, and the
project references will automatically update. For example, someone
with Office 2003 can open the workbook and it will work fine. This
will only work, however, if the workbook doesn't need to be saved;
once the workbook is saved, the references are updated and it cannot
be used by someone with Office 2000.

--JP
 
L

LuisE

Thanks JP.

I'm running the code from Excel. I'm sending a daily file to the different
users for processing. I was thinking of saving iniatially the source file and
replace it with the daily file. How can I overcome the fact of the references
bieng updated??????
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top