Hugo, altere o Paste por PasteSpecial.
Agora não sei se entendi corretamente, em sua rotina é selecionado A2 e depois temos a instrução :
Do While ActiveCell <> "" ou seja, enquanto A2 for diferente de VAZIA, então o Do Wihile só vai correr uma vez devido de no final termos a instrução ActiveCell(x1Down).Select que seleciona A1 e é encerrado o Loop.
Então se a intenção é copiar uma celula de cada vez que se encontram na Coluna A a partir de A2 usando o Loop a rotina deveria ser construida usando For...Next, se for isto, a rotina abaixo irá fazer este serviço com poucas linhas :
Sub MacroMauro()
Sheets("Colaboradores").Select
'Conta a qde de dados na coluna A
Set sRng = Range("A" & Rows.Count).End(xlUp)
For x = 2 To sRng + 1
Range("A" & x).Copy Destination:=Worksheets("Folha").Range("E1")
Worksheets("Folha").PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Next x
MsgBox "A impressão das Plan2s de Ponto terminou!"
End Sub
Se não for isto, fica uma sugestão.
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 13/07/2011 10:41 pm