Cómo hago para copiar estos valores consecutivamente

Buenas tardes, gracias por su colaboración. Tengo una macro para seleccionar y copiar una serie de valores (aproximadamente 8000). La macro está redactada así:

Sub Copiar()
For i = 2 To 1247
For j = 2 To 7
Cells(i, j).Select
Selection.Copy
Range("U11").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
Next j
Next i
End Sub

Sin embargo, como pueden ver lo que hace la macro es copiar y pegar cada valor en una misma celda. Quisiera solicitarles el favor de decirme cómo hago para copie y pegue de forma consecutiva (no en una misma celda) cada uno de los valores hasta llegar al valor 8000. Mil gracias.

Atentamente

Clara Romero

1

1 Respuesta

4.703.525 pts. Sancho, si los perros ladran ...

¿Quieres qué se copien hacia abajo o hacia la derecha?

¿Siempre empezando desde la celda U11?

Te preparo un ejemplo y te lo envío

Saludos. DAM

Buenas noches Experto

Muchas gracias por esta respuesta. Sí, efectivamente necesitaría que los valores se copien hacia abajo comenzando desde alguna celda, pero hasta ahora no he podido pues sólo copia los valores en una sola celda, desconozco cuál podría ser el método o la propiedad aplicable a esta parte. Mil gracias por esta valiosa ayuda.

Atentamente

Clara Romero

Esta sería la versión para copiar hacia abajo

Sub Copiar()
k = 11
For i = 2 To 1247
    For j = 2 To 7
        Cells(i, j).Select
        Selection.Copy
        Range("U" & k).PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
        k = k + 1
    Next j
Next i
End Sub

Esta macro hace lo mismo que lo anterior pero utiliza un solo for

Sub copiar2()
k = 11
For Each celda In Range("B2:G1247")
    celda.Copy
    Range("U" & k).PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    k = k + 1
Next
End Sub

Esta versión es para copiar hacia la derecha

Sub copiar3()
k = 21
For Each celda In Range("B2:G1247")
    celda.Copy
    Cells(11, k).PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
    k = k + 1
Next
End Sub

Saludos. Dam
Si es lo que necesitas.

Buenas noches Experto

Mil y mil gracias Experto. La solución propuesta está muy completa, ya la he comprobado y funciona perfecto. Tío, muchas gracias, éxitos y bendiciones para Usted, me ha servido mucho esta explicación.

Infinitamente agradecida,

Clara Romero

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas