Ayudaaa. No me funciona un pequeño ciclo for

Hola amigos, lo que deseo hacer es copiar unos datos de 2 hojas distintas.
(X es 36 e Y = 37, la idea es que copie de AJ35:AK44 a O48:P37 de la otra hoja)
Este es el ciclo, y todas las variables están declaradas.
For col = x To y
fil = 48
For colum = 15 To 15 + x - y
For v = 35 To 44
Cells(fil, colum) = Sheets("Alim.Rougher2009").Cells(v, x)
fil = fil + 1
Next v
Next colum
Next col
Me funciona perfecto para x, pero no sigue avanzando con Y
1

1 respuesta

Respuesta
1
Claro, le dices que desde que sea por a y, cuando llega a y se detiene. Y como se llevan solo 1 pues hace la primera vez la por y se detiene. Cambia así,
For col = x To y +1
fil = 48
For colum = 15 To 15 + x - y
For v = 35 To 44
Cells(fil, colum) = Sheets("Alim.Rougher2009").Cells(v, x)
fil = fil + 1
Next v
Next colum
Next col
Ok. Intentare con eso
En el ciclo de column es 15 + Y - X
La idea es que con eso salte a la columna del lado.
Si no te funciona rehacemos el bucle porque yo creo que no lo construiría así.
Amigo aetxezar
No resulto, ¿hay alguna forma de enviarte la planilla?
Gracias
Para que me entiendas un poco más esta es la programación completa:
If WorksheetFunction.CountIf(myrange, CDate(mifecha)) = 0 Or WorksheetFunction.CountIf(myrange1, CDate(mifecha1)) = 0 Then
       MsgBox "Revise fechas puesto que genero error de localización en hoja Alim.Rougher2009", , ""
    Exit Sub
Else
    x = WorksheetFunction.Match((mifecha - dddi) + 2, myrange, 0)
    y = WorksheetFunction.Match((mifecha1 - dddi) + 2, myrange1, 0)
    For col = x To y
        fil = 48
        For colum = 15 To 15 + y - x
            For v = 35 To 44
            Cells(fil, colum) = Sheets("Alim.Rougher2009").Cells(v, x)
            fil = fil + 1
            Next v
        Next colum
    Next col
End If
Set myrange = Nothing
Set myrange1 = Nothing
( POR ME ENTREGA EL VALOR 36 E Y = 37, la idea es que ira a tomar a la otra hoja los valores de 2 columnas que son justamente la 36 y 37. Entre las filas 35 y 44)
Cuando corro la macro la columna 36 me la copia perfecto en la (fila 48, columna15 hacia abajo, pero la columna 37, me la copia en la fila 58 de la col 16 hacia abajo y con los mismos datos que antes.
Copio de (aj35) fila, columna 35,36 - (ak44) 44,37
a (o37) 37,15 - p48 (48,16) en la hoja Rougher2009
Este es el código:
for z=36 to 37
for x=35 to 44
Sheets("Alim.Rougher2009").Cells(x+2, z-21)=Cells(x, z)
next
next
mmm no es tan simple como eso porque por e y son variables, según las fechas que ingres.
Fíjate que por e y buscan en una fila y luego me dan el valor de columna donde esta la fecha.
Y con esos valores debo trabajar ya que podrían ser de la col 10 a 40 inclusive.
Por favor dale una vuelta a mi programación debe haber un pequeño error que no soy capaz de ver por mi mismo.
Gracias
Dime donde metes las fechas y donde las buscas en que fila columna hoja y rehago código y como influye esto en la posición de la hoja origen y destino

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas