Label Orientation from Left to Right TO Top to Bottom

V

vbasean

pealing labels from left to right on a sheet of labels is cumbersome, and it
has to be done if coellating letters to envelopes, etcetera. I wanted a mail
merge that printed my labels top to bottom per column instead.

I search around, some said create a macro/vba function...

1) A little page setup on the margins to match the label. (Hint, make the
bottom margin a little shorter to allow for that troublesome last carriage
return that seems to bump you to a new page.)
2) Then I created COLUMNS [Format, Columns] that matched my labels
3) Now Create a table with only ONE column with the proper amount of rows to
match a page of labels.
4) Set the row height to the height of one label [Exactly, not At Lease]
5) With the mail merge tool bar open, click on the "Open Data Source" button.
6) Set up a cell with your fields the way you want them to display.
7) Copy and paste the Contents of the cell into the next cell below.
8) Insert a Word Field "Next Record" before your text in the second cell.
9) Copy that cell's contents and paste into all other cells.
10) MERGE ON! [merge to print or new document]

and voila! Your labels print top to bottom because they are following the
column and not the tab order of a three column table.

----------------
This post is a suggestion for Microsoft, and Microsoft responds to the
suggestions with the most votes. To vote for this suggestion, click the "I
Agree" button in the message pane. If you do not see the button, follow this
link to open the suggestion in the Microsoft Web-based Newsreader and then
click "I Agree" in the message pane.

http://www.microsoft.com/office/com...482&dg=microsoft.public.word.mailmerge.fields
 
D

Doug Robbins - Word MVP

' 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

vbasean said:
pealing labels from left to right on a sheet of labels is cumbersome, and
it
has to be done if coellating letters to envelopes, etcetera. I wanted a
mail
merge that printed my labels top to bottom per column instead.

I search around, some said create a macro/vba function...

1) A little page setup on the margins to match the label. (Hint, make the
bottom margin a little shorter to allow for that troublesome last carriage
return that seems to bump you to a new page.)
2) Then I created COLUMNS [Format, Columns] that matched my labels
3) Now Create a table with only ONE column with the proper amount of rows
to
match a page of labels.
4) Set the row height to the height of one label [Exactly, not At Lease]
5) With the mail merge tool bar open, click on the "Open Data Source"
button.
6) Set up a cell with your fields the way you want them to display.
7) Copy and paste the Contents of the cell into the next cell below.
8) Insert a Word Field "Next Record" before your text in the second cell.
9) Copy that cell's contents and paste into all other cells.
10) MERGE ON! [merge to print or new document]

and voila! Your labels print top to bottom because they are following the
column and not the tab order of a three column table.

----------------
This post is a suggestion for Microsoft, and Microsoft responds to the
suggestions with the most votes. To vote for this suggestion, click the "I
Agree" button in the message pane. If you do not see the button, follow
this
link to open the suggestion in the Microsoft Web-based Newsreader and then
click "I Agree" in the message pane.

http://www.microsoft.com/office/com...482&dg=microsoft.public.word.mailmerge.fields
 
V

vbasean

just curious, will this work on those lables templates that have those extra
columns in them for spacing?
 
D

Doug Robbins - Word MVP

Yes.

--
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

vbasean said:
just curious, will this work on those lables templates that have those
extra
columns in them for spacing?

vbasean said:
pealing labels from left to right on a sheet of labels is cumbersome, and
it
has to be done if coellating letters to envelopes, etcetera. I wanted a
mail
merge that printed my labels top to bottom per column instead.

I search around, some said create a macro/vba function...

1) A little page setup on the margins to match the label. (Hint, make the
bottom margin a little shorter to allow for that troublesome last
carriage
return that seems to bump you to a new page.)
2) Then I created COLUMNS [Format, Columns] that matched my labels
3) Now Create a table with only ONE column with the proper amount of rows
to
match a page of labels.
4) Set the row height to the height of one label [Exactly, not At Lease]
5) With the mail merge tool bar open, click on the "Open Data Source"
button.
6) Set up a cell with your fields the way you want them to display.
7) Copy and paste the Contents of the cell into the next cell below.
8) Insert a Word Field "Next Record" before your text in the second cell.
9) Copy that cell's contents and paste into all other cells.
10) MERGE ON! [merge to print or new document]

and voila! Your labels print top to bottom because they are following the
column and not the tab order of a three column table.

----------------
This post is a suggestion for Microsoft, and Microsoft responds to the
suggestions with the most votes. To vote for this suggestion, click the
"I
Agree" button in the message pane. If you do not see the button, follow
this
link to open the suggestion in the Microsoft Web-based Newsreader and
then
click "I Agree" in the message pane.

http://www.microsoft.com/office/com...482&dg=microsoft.public.word.mailmerge.fields
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top