Macro para rango que cumple criterio copiarlo en otro libro

Tengo un libro l1 con una hoja h1, y un libro l2 con una hoja h2.

En la h2 tengo unas 1000 filas con datos desde A hasta K. En la columna I (la novena) el dato que tengo es una fecha.

He hecho una macro que con una fecha dada, a la que llamo fec2, compara en h2 dicha fec2 con la de la columna I, y debe recorrerla hasta que la encuentre vacía. En caso de que la fecha en I sea igual a fec2 se copia el rango de la fila en que esté desde A hasta K y lo pega en el libro l1, hoja h1 en la primera fila vacía (o rango de A vacío).

El problema es que después de copiado el primer A-K no consigo que continúe. O sea, no me busca la fecha fec2 en la siguiente fila de h2 y por lo tanto no lo copia ni pega nada más en h1.

Estoy usando "If" y me temo que deba usar "Do While loop" que no controlo.

1 Respuesta

Respuesta
1

Si tienes

if(_____) then

     (*****) -> Tu funciones

end if

Lo has de sustituir por

dim i as integer
i=2 <--- Un 2 si las columnas tienen encabezados, si nó es un 1
while(hoja2.range("I"+cstr(i))<>"") 
'Crea un loop que va yendo desde la fila i2 hasta la 1ª celda vacía de la 
'columna
     if(_____) then
        (*****) -> Tu funciones
     end if 
 i=i+1
Wend()

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas