First, I don't think I'd use Excel to print labels. I'd use excel to hold my
data, but I'd use all the stuff built into MSWord to print the labels.
MSWord has a nice way to merge data from excel file:
http://www.mvps.org/dmcritchie/excel/mailmerg.htm
http://www.mvps.org/word/FAQs/MailMerge
The first is from David McRitchie and the second is by Beth Melton and Dave
Rado.
And MSWord has lots of support for standard sized labels. Just way more options
that you'd ever think!
And second, if I had to print labels through excel and also send the escape
characters to the printer, then I'd use that same technique for sending the data
to the printer.
Untested!
Sub testme01()
dim myCell as range
dim myRng as range
with activesheet
set myrng = .range("a1",.cells(.rows.count,"A").end(xlup))
end with
Open "LPT1:" For Output As #1
Print #1, Chr(27) + "&l6D" '(6lpi works!)
for each mycell in myrng.cells
Print #1, mycell.value & "--" & mycell.offset(0,1).value
Print #1, mycell.offset(0,2).value & "--" & mycell.offset(0,3).value
print #1
next mycell
Print #1, Chr(12) '(FormFeed works!) 'I'd hit the button!
Close #1
End Sub
But seriously, take a look at MSWord and printing labels from there. You'll be
pleasantly surprised.