Macro para copiar datos de una hoja a otra de forma iterativa

Necesitaría que me ayudasen con una macro para copiar un rango de celdas (B4 a B8) de una hoja activa y se peguen en otra hoja (nombre: Ofertas) en la fila 22 de forma transpuesta, pero si hay datos en la fila que las pegue en la siguiente fila de forma iterativa.

Respuesta
1

Este código te servirá:

Sub copiar()
Dim celda As Range
Set celda = Sheets("Ofertas").Range("A22")
Range("B4:B8").Copy
Application.Goto Sheets("Ofertas").Range("A22")
If ActiveCell.Value = "" Then
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True
Exit Sub
Else
Do
ActiveCell.Offset(1, 0).Select
Loop Until ActiveCell.Value = ""
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True
End If
End Sub

1 respuesta más de otro experto

Respuesta
1

Lo he probado y funciona correctamente.

Por cierto, una pregunta conceptual, en caso de querer copiar otras celdas no contiguas al rango indicado anteriormente, ¿sólo hay que volver a añadir el siguiente código verdad (con los nuevos números de celda)?:

Range("B4:B8"). Copy
Application.Goto Sheets("Estado ofertas 2017").Range("A22")

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas