Do you mean labels? The short answer is that you can't do this. You could,
however create a new data file in the correct order to make it appear that
you have merged top to bottom. Fellow MVP Doug Robbins produced the
following method and macro that will do the trick:
Create a catalog or directory type mailmerge with your original data file,
to get the data into the form of word table. Add a row at the top into which
you insert the names of the mergefields and then run this macro with that
document open, it will sort the table into the revised order required. Save
the file and use it as the data source for your label mailmerge, the labels
will be in the order that you want:
Sub UpAndDown()
' 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
End Sub
--
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
Graham Mayor - Word MVP
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>