Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
![]()
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
![]()
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
![]()
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 | |
|
|
![]() |
||||
Thread | Forum | |||
How do you make a "Date" "Static" in a template. | Microsoft Word Help | |||
How can I make "No borders" visible in a table? | Tables | |||
to make double space inbetween the sentences seperated by"."or"?" | New Users | |||
Is "Keep with next" in "Paragraph" window the only way to keep table rows on one page? | Formatting Long Documents | |||
disable "first letter of table cells" in "AutoCorrect" with regist | Microsoft Word Help |