Reply
 
Thread Tools Display Modes
  #1   Report Post  
Posted to microsoft.public.word.mailmerge.fields
wriotu wriotu is offline
external usenet poster
 
Posts: 1
Default I want to make "next record" go down the table, not across the tab

I am setting up a directory of names and addresses. Let's say it is 3
columns across by 10 rows down on each page. On the first page, I want the
first 10 names to go in column 1, names 11-20 to go in column 2 and names
21-30 to go in column 3. On the second page, I want names 31-40 to go in
column 1, etc... By default, "next record" is causing names 1-3 to go in the
first row, names 4-6 to go in the second row, etc.

How can I cause next record to go down the page and then to the next colum?
  #2   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Graham Mayor Graham Mayor is offline
external usenet poster
 
Posts: 19,312
Default I want to make "next record" go down the table, not across the tab

Use a Directory/Catalog merge into a document set up as three columns. You
appear to be using a label format at present.

If you want to use a label format you will have to order your data source
appropriately for which p[urpose you can use one of Doug's handy macros.

Sub SortData()
' Macro to assign numbers to data source so that it can be sorted to cause
'labels to print down columns
Dim Message, Title, Default, labelrows, labelcolumns, _
i As Integer, j As Integer, k As Integer
Message = "Enter the number of labels in a row" ' Set prompt.
Title = "Labels per Row" ' Set title.
Default = "3" ' Set default.
' Display message, title, and default value.
labelcolumns = InputBox(Message, Title, Default)
Message = "Enter the number of labels in a column" ' Set prompt.
Title = "Labels per column" ' Set title.
Default = "8" ' Set default.
labelrows = InputBox(Message, Title, Default)
With ActiveDocument.Tables(1)
..Columns.Add BeforeColumn:=ActiveDocument.Tables(1).Columns(1)
..Rows(1).Range.Cut
End With
k = 1
For i = 1 To ActiveDocument.Tables(1).Rows.Count - labelcolumns
For j = 1 To labelrows
ActiveDocument.Tables(1).Cell(i, 1).Range.InsertBefore _
k + (j - 1) * labelcolumns
i = i + 1
Next j
k = k + 1
i = i - 1
If k Mod labelcolumns = 1 Then k = k - labelcolumns + _
labelcolumns * labelrows
Next i
ActiveDocument.Tables(1).Sort FieldNumber:="Column 1"
ActiveDocument.Tables(1).Rows(1).Select
Selection.Paste
ActiveDocument.Tables(1).Columns(1).Delete
End Sub

http://www.gmayor.com/installing_macro.htm

--

Graham Mayor - Word MVP

My web site www.gmayor.com
Word MVP web site http://word.mvps.org


wriotu wrote:
I am setting up a directory of names and addresses. Let's say it is 3
columns across by 10 rows down on each page. On the first page, I
want the first 10 names to go in column 1, names 11-20 to go in
column 2 and names 21-30 to go in column 3. On the second page, I
want names 31-40 to go in column 1, etc... By default, "next record"
is causing names 1-3 to go in the first row, names 4-6 to go in the
second row, etc.

How can I cause next record to go down the page and then to the next
colum?



Reply
Thread Tools
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
How do you make a "Date" "Static" in a template. Kirk Microsoft Word Help 1 April 21st 07 03:48 PM
How can I make "No borders" visible in a table? Anderjasje Tables 1 February 13th 07 12:09 PM
to make double space inbetween the sentences seperated by"."or"?" dinesh New Users 1 August 26th 06 09:58 PM
Is "Keep with next" in "Paragraph" window the only way to keep table rows on one page? Dmitry Formatting Long Documents 3 June 8th 06 01:48 PM
disable "first letter of table cells" in "AutoCorrect" with regist Harald malek Microsoft Word Help 1 December 28th 05 03:36 PM


All times are GMT +1. The time now is 09:41 AM.

Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 Microsoft Office Word Forum - WordBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Word"