Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Word / Mailmerge and Fax / August 2005

Tip: Looking for answers? Try searching our database.

Advanced merges? Ex <material>  pull all data for all vendors

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Merge - 19 Aug 2005 19:49 GMT
I need to have a merge that goes

If the vendors name is " TOM" which will be a merge field then I also need
in another column pull all the "material" for that vendor.

Each vendor could have used a diff number of materials

Doug Robbins - 19 Aug 2005 21:10 GMT
Word does not really have the ability to perform a "multiple items per
condition (=key field)" mailmerge.

See the "Multiple items per condition" item under the "Special merges"
section of fellow MVP Cindy Meister's website at

http://homepage.swissonline.ch/cindymeister/MergFram.htm

Or, if you create a Catalog (on in Word XP and later, it's called Directory)
type mailmerge main document with the mergefields in the cells of a one row
table in the mailmerge main document with the keyfield in the first cell in
the row and then execute that merge to a new document and then run the
following macro, it will create separate tables with the records for each
key field in them.  With a bit of further development, you may be able to
get it to do what you want.

' Macro to create multiple items per condition in separate tables from a
directory type mailmerge

Dim source As Document, target As Document, scat As Range, tcat As Range
Dim data As Range, stab As Table, ttab As Table
Dim i As Long, j As Long, k As Long, n As Long
Set source = ActiveDocument
Set target = Documents.Add
Set stab = source.Tables(1)
k = stab.Columns.Count
Set ttab = target.Tables.Add(Range:=Selection.Range, numrows:=1,
numcolumns:=k - 1)
Set scat = stab.Cell(1, 1).Range
scat.End = scat.End - 1
ttab.Cell(1, 1).Range = scat
j = ttab.Rows.Count
For i = 1 To stab.Rows.Count
   Set tcat = ttab.Cell(j, 1).Range
   tcat.End = tcat.End - 1
   Set scat = stab.Cell(i, 1).Range
   scat.End = scat.End - 1
   If scat <> tcat Then
       ttab.Rows.Add
       j = ttab.Rows.Count
       ttab.Cell(j, 1).Range = scat
       ttab.Cell(j, 1).Range.Paragraphs(1).PageBreakBefore = True
       ttab.Rows.Add
       ttab.Cell(j + 1, 1).Range.Paragraphs(1).PageBreakBefore = False
       For n = 2 To k
           Set data = stab.Cell(i, n).Range
           data.End = data.End - 1
           ttab.Cell(ttab.Rows.Count, n - 1).Range = data
       Next n
   Else
       ttab.Rows.Add
       For n = 2 To k
           Set data = stab.Cell(i, n).Range
           data.End = data.End - 1
           ttab.Cell(ttab.Rows.Count, n - 1).Range = data
       Next n
   End If
Next i

Signature

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

>I need to have a merge that goes
>
> If the vendors name is " TOM" which will be a merge field then I also need
> in another column pull all the "material" for that vendor.
>
> Each vendor could have used a diff number of materials
Merge - 20 Aug 2005 07:51 GMT
Doug Thank you very much for your input. This will lead me in the right
direction.
Thank you

> Word does not really have the ability to perform a "multiple items per
> condition (=key field)" mailmerge.
[quoted text clipped - 61 lines]
> >
> > Each vendor could have used a diff number of materials
Merge - 22 Aug 2005 11:51 GMT
ABC Corp
Xxxx
Xxxx
Xxx

Dear <<VENDOR>>,

Dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd

Sincerely
BLAH
BLAH
BLAH
BLAH

Material Code            Material Description
<<Material Code>>            <<Material Description>>

Above is an example of what I need: I need the merge to look at the vendor
in the data base and return below all the material code numbers and material
code descriptions that relate to that one vendor.

I am not sure when to run the macro
Thanks

> Word does not really have the ability to perform a "multiple items per
> condition (=key field)" mailmerge.
[quoted text clipped - 61 lines]
> >
> > Each vendor could have used a diff number of materials
Doug Robbins - 22 Aug 2005 16:27 GMT
If the data is in an Access database then I would recommend that you use a
report in Access to do it.

Signature

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

> ABC Corp
> Xxxx
[quoted text clipped - 91 lines]
>> >
>> > Each vendor could have used a diff number of materials

Rate this thread:






 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.