Yes. I should have mentioned that, sorry.
Adding the registry key will solve the symptoms; I just wondered if I did
something wrong.
This morning I did a manual mail merge, saved the main document after the
merge and the exact same prompt for SQL statement twice when reopening!
A flaw in Office 2007, perhaps?
I can live with the registry fix as I can apply it from my program before
doing the mail merge.
--
Henrik Tonnesen
attentive as
"Peter Jamieson" wrote:
Before doing anything, have you applied the registry change in the
following article:
http://support.microsoft.com/kb/825765
Also, which version of word are you using?
Peter Jamieson
http://tips.pjmsn.me.uk
Visit Londinium at http://www.ralphwatson.tv
Tonne wrote:
I am trying to merge a csv file:
Name;Address;Zipcode;City
My name;Where I live;DK-0000;Nearby
With a template containg bookmarks for Name, Address, ...
Everything works except for the two prompts for executing SQL commands when
the document is reopened. First a prompt for the real csv file and then a
prompt for a temporary csv file.
If I accept both the merge is repeatable.
If i print the query from VBA (ctrl-G print
activedocument.mailmerge.datasource.querystring) the result is a query on the
temporary file.
Here is the code (using 'generic' COM classes for everything):
COMappl = new COM(Word.Application);
COMdocuments = COMappl.documents();
COMdocument = COMdocuments.open(template); // variable holding
the template file
COMdocument.saveas(filename); // variable holding the saved doc
COMappl.visible(true);
COMmailmerge = COMdocument.mailmerge();
COMmailmerge.OpenDataSource(fileNameData,0,0,0,1); // variable
holding the datafile (csv)
COMmailmergefields = COMmailmerge.fields();
COMbookmarks = COMdocument.bookmarks();
COMbookmark = coMbookmarks.item('Name');
COMrange = coMbookmark.range();
COMmailmergefields.Add(COMrange,'Name'); // insert just one merge
field
COMmailmerge.Execute();
COMappl.Activate();
COMdocument.save();
Any ideas?