Copiar fila Excel

Buenas con esta macro solo consigo que me copie el primer fila de la hoja CARIOCA, pero lo que yo necesito es que me copie todas las filas que tengan escrito algo en la celda. Para ser más explicito es una lista de artículos para que mis clientes compren vía mail y luego que elijan la cantidad, que es la columna(E) que chequeo sea distinta de 0, en una hoja aparte llamada BOLETA me presente los artículos que eligió el cliente para no tener que buscar uno por uno, esta macro solo me presenta la primer fila del libro:
Sub copiar()   
Sheets("CARIOCA").Select   
Range("E2:E1023").Select   
Do While ActiveCell.Value <> ""       
              If ActiveCell.Value <> 0 Then           
              ActiveCell.EntireRow.Copy           
             Sheets("VOLETA").Select           
              Range("A2").Select           
              Do While ActiveCell.Value <> ""               
              ActiveCell.Offset(1, 0).Select           
              Loop           
             ActiveSheet.Paste 
             Application.CutCopyMode = False       
             End If       
             Sheets("VOLETA").Select       
             ActiveCell.Offset(1, 0).Select   
Loop          
End Sub

1 respuesta

Respuesta
1
Te dejo la rutina según cómo yo interpreto que necesitas. Reemplazé la hoja VIOLETA por BOLETA, ya que así lo mencionás en la consulta.
Sub copiar()
'x Elsamatilde
Sheets("CARIOCA").Select
    'Range("E2:E1023").Select
Range("E2").Select
While ActiveCell.Row <= 1023
If ActiveCell.Value <> 0 Then
    ActiveCell.EntireRow.Copy
    Sheets("BOLETA").Select
    'busca la primer fila libre según col A
    Range("A65536").End(xlUp).Offset(1, 0).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
End If
'vuelvo a la hoja CARIOCA
Sheets("CARIOCA").Select
ActiveCell.Offset(1, 0).Select
Wend
End Sub
Sdos y no olvides finalizar la consulta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas