Sub UpdateDataSource()
Dim MyPath As String
Dim MyName As String
Dim MyDoc As Document
'let user select a path
With Dialogs(wdDialogCopyFile)
If .Display() -1 Then Exit Sub
MyPath = .Directory
End With
'strip quotation marks from path
If Len(MyPath) = 0 Then Exit Sub
If Asc(MyPath) = 34 Then
MyPath = Mid$(MyPath, 2, Len(MyPath) - 2) End If
'Open each file from the selected path and 'attach the mailmerge data source
to it.
MyName = Dir$(MyPath & "*.doc")
Do While MyName ""
Set MyDoc = Documents.Open(MyPath & MyName)
With MyDoc
.MailMerge.OpenDataSource "D:\datasource.csv"
.Save
.Close
End With
MyName = Dir
Loop
End 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
"Microsoft Newsserver" wrote in message
...
Hi Doug,
Thanks again - do you know of any reference for the details for
appropriate code for updating the location of the datasource?
Andrew
"Doug Robbins - Word MVP" wrote in message
...
I wasn't suggesting using Find & Replace. The purpose for pointing you to
that article was for the way in which it deals with opening each of the
files in a folder, then performing an operation on the file before saving
and closing it. You would need to replace the code in the article that
does the Find & Replace with the appropriate code for attaching the new
datasource to each file.
--
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
"Microsoft Newsserver" wrote in message
...
Thanks for your reply Doug. I've been reading that article which looks
promising, however as I understand it the Find&Replace dialog lets you
replace text in the document. I can't see how to use the Find&Replace to
replace the stored location of the data source - the only way I know how
to change this is to either use the Mail Merge Wizard at step 3 or click
"Open Data Source" on the Mail Merge toolbar.
If there's another way to set this I'd love to know.
Many thanks,
Andrew
"Doug Robbins - Word MVP" wrote in message
...
Using a modification of the code in the article "Find & ReplaceAll on a
batch of documents in the same folder" at:
http://www.word.mvps.org/FAQs/MacrosVBA/BatchFR.htm
you could attach the new data source to each of the mail merge main
letters.
--
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
"Andrew Duncan" wrote in message
...
Does anyone know of a way to dynamically set the path to the data
source for a Word 2003 mail merge letter? For example if you had 50
letters all pointing to a data source at:
C:\datasource.csv
is there an easy way to change it to find the datasource at:
D:\datasource.csv
without having to change it for each of the 50 letters?
Thanks,
Andrew