Re: Single record merging



Hi Peter

Thank you for that very full answer! (Sadly my technical skills may be a
little lacking, although I can pick things up quickly!)

It sounds like you recommend (b) modifying the SQL query on the data source,
which sounds useful. I do know what query I need, although obviously I will
be passing it a variable. Problem is, how would I pass trhat variable to
Word to tell it which record to pull back.

What about if I use ASK in mailmerge, and take that input and pass it to the
SQL query?

Peter

"Peter Jamieson" wrote:

Rather than simply running Word from the command line with a parameter, can
you automate it?

In essence Word lets you specify the records you want to merge in three
different ways:
a. For some types of merge you can use { SKIPIF } fields in the body of the
document. To do that you would have to alter the document itself before you
merged, and Word itself would iterate right through your data source. So
lots of problems there.
b. using an SQL query that is built when you select the data source, or
which Word modifies when you set sort and filter options in Query Options,
or which you provide as a parameter to Word's OpenDataSource method, or
which you provide by setting the .QueryString property of the
MailMerge.Datasource object
c. by setting MailMerge.Datasource.Included to false for every record e.g.
using .SetAllIncludedFlags Included:=False, then navigating to the record
you want, setting its Included flag to True

(Another way of course would be if you could set up a table that had one
record that specified the key of the record you needed, and use a query/view
to get the record you wanted. Then you wouldn't need to change anything in
Word. But there can be problems with that).

In essence, if you know what query you need to use (complete with the WHERE
clause that specifies the single record) you probably need to use (b), which
is arguably the simplest option. If you do not know precisely what query has
been specified then you could either
d. inspect .Querystring and try to modify its WHERE clause or
e. you would need at least to know the name(s) of the data sources unique
key fields, in which case you could probably use (c).

Then you specify the destination (printer, new document, whatever) and use
the MailMerge.Execute method to do the merge and so on.

Sorry I can't give you a chunk of code that just does it...

When automating Word MailMerge, you will probably also have to take account
of the following KB article:

http://support.microsoft.com/kb/825765/en-us


--
Peter Jamieson
http://tips.pjmsn.me.uk

"Peter Ambrose" <Peter Ambrose@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:D925C63C-7652-4B43-9525-72A98E175D70@xxxxxxxxxxxxxxxx
I have a SQL database - I want to merge just a single record from it.

How do I select a particular from within Word, simply, ideally driven not
from within the word document? i.e. I need to pass word a record-id on
launching it, run a macro which then mailmerges just that record?

Thanks

Peter


.



Relevant Pages

  • Re: mail merge recipients
    ... checked records and use that Query as the data source. ... "Peter Jamieson" wrote: ... in the Mail Merge Recipients dialog box, ...
    (microsoft.public.word.mailmerge.fields)
  • Re: Line breaks
    ... This particular problem would probably be much more easily fixed by creating a query in Access that replaces every comma in the address field by comma+CR. ... For example, if your data source table/query is called mysource and the addresses are in a column called address, then you could use ... You have to connect using DDE - that's the default in Word 2000 and earlier. ... So another thing you can do is specify the QUERY as a CREATE TABLE query that you then use as your data source. ...
    (microsoft.public.word.mailmerge.fields)
  • Re: Mail Merge
    ... "Peter Jamieson" wrote: ... can you conect to any of the tables in your .mdb, or do you see the same ... when you are in Open Data Source, ... can see the listing of table and queries but when I select the query I ...
    (microsoft.public.word.mailmerge.fields)
  • Re: Currency Formatting - Word 2000
    ... it exports the fields intact to a text string which can be pasted into a NG ... Peter Jamieson wrote: ... Thanks for this query. ... The data source holds the data as ...
    (microsoft.public.word.mailmerge.fields)
  • MS Access/VBA Question - Using Multiple combo Boxes to Search on a Form
    ... -I have a form with several combo boxes and several text ... a button is clicked which launches a new form (frmResults). ... frmResults is bound to a query, the criteria of which is set to the ... specify anything for a particular field. ...
    (microsoft.public.office.developer.vba)

Loading