Como copiar rangos de filas consecutivos con For Next a través de una macro en Excel?
Soy nuevo en macros por favor su ayudaaa!
Necesito crear un ciclo For (creo que For) la idea es programar para copiar desde hoja1(datos1) en el rango "E3:V3" posteriormente "E4:V4" y asi sucesivamente hasta "E40:v40", luego saltar a "E44:V44" y continuar de la misma forma, es decir, una constante de 41 (yo lo use como contador i= 0 to 1000, donde, i= i * 41), la idea es pegar y transponer en forma consecutiva en la hoja2 (datos2) columna C.
Hasta ahora lo que tengo es esto, solo me falta crear el ciclo para copiar y transponer estas filas:
Por favooorrrrr ayudaaaa!
Sub Datos()
'
Dim datos1, datos2 As Object
Dim n, a, b, c, i, ii, fila As Integer
Set datos1 = Worksheets("OC")
Set datos2 = Worksheets("Oferta_de_Compra")
For i = 0 To 1000
n = datos2.Cells(Rows.Count, 3).End(xlUp).Row
a = datos2.Cells(Rows.Count, 6).End(xlUp).Row
b = datos2.Cells(Rows.Count, 5).End(xlUp).Row
c = datos2.Cells(Rows.Count, 11).End(xlUp).Row
c = c + 1
a = a + 1
n = n + 1
b = b + 1
If datos1.Cells((i * 41) + 2, 2) <> "" Then
For ii = 1 To 40
If datos1.Cells((i * 41) + 1, ii + 4) <> "" Then
datos2.Cells(ii + n, 3) = UCase(datos1.Cells((i * 41) + 2, 2)) + "-" + UCase(datos1.Cells((i * 41) + 1, ii + 4)) 'ESTA MACRO CONCATENA EL CODIGO Y NUMERACION
If datos1.Cells((i * 41) + 2, 4) <> "" Then
datos2.Cells(ii + a, 6) = datos1.Cells((i * 41) + 2, 4) ' ACA SE PEGA EL PRECIO COSTO
If datos1.Cells((i * 41) + 1, ii) <> "" Then
datos2.Cells(ii + b, 5) = datos1.Cells((i * 41 + n), ii + 4) ' MACRO PARA CANTIDAD DE PARES, NO RESUELTO
If datos1.Cells((i * 41) + 1, ii) <> "" Then ' MACRO PARA COLOCAR LAS TIENDAS, NO RESUELTO
datos2.Cells(ii + c, 11) = datos1.Cells((i * 41 + i) + 3, 1)
End If
End If
End If
Else
Exit For
End If
Next ii
Else
Exit For
End If
Next i
End Sub