Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
Set order of "next record" to list down left column then right
New to Office 2007. Is it possible to establish the order in which "next
record" will print? I want it to print in two columns, first down the left column and then across and down the right column. |
#2
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
Set order of "next record" to list down left column then right
Not without changing the order of your data source. Word will always print
labels across the rows. Change to a directory merge and a two column format and it will print the records down the columns (but they will not be labels). -- Graham Mayor - Word MVP My web site www.gmayor.com Word MVP web site http://word.mvps.org PKeuning wrote: New to Office 2007. Is it possible to establish the order in which "next record" will print? I want it to print in two columns, first down the left column and then across and down the right column. |
#3
Posted to microsoft.public.word.mailmerge.fields
|
|||
|
|||
Set order of "next record" to list down left column then right
Here is a macro that will re-arrange the data source so that the labels will
be printed as you want. Alternatively, if you are using Access and can get the datasource into Access, it has a label wizard that that this capability. ' 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 = "5" ' Set default. labelrows = InputBox(Message, Title, Default) ActiveDocument.Tables(1).Columns.Add BeforeColumn:=ActiveDocument.Tables(1).Columns(1) ActiveDocument.Tables(1).Rows(1).Range.Cut 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 -- 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 "PKeuning" wrote in message ... New to Office 2007. Is it possible to establish the order in which "next record" will print? I want it to print in two columns, first down the left column and then across and down the right column. |
Reply |
Thread Tools | |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Why do I get "A field caluclation error occured in record N"? | Mailmerge | |||
eliminate "copy" of "saved as" document showing up in file list | Microsoft Word Help | |||
Need addresses to show in a mail merge instead of "Next Record" | Mailmerge | |||
How do I add a folder to the "Look In" menu (to left file list) | Microsoft Word Help | |||
How to turn "a list of bullet points" into a "task check list/box" ? | Tables |