Duda macros!

Hola experto, tengo un gran problema, soy un principiante en macros desde VBA y me están sacando canas verdes, espero me puedas ayudar POR FAVOR!
La macro que estoy haciendo tiene que copiar y pegar datos de un libro 1 y libro 2 a un libro 3(que es desde donde se ejecuta el macro), primero debo abrir los libros 1 y 2(que es de donde extraigo la info que necesito) esto ya lo puede hacer (se buscan desde un botón examinar y se abren cuando pulso uno de aceptar), ahora del libro 1 debo extraer toda la información que me da, seria prácticamente copiarla y pegarla, el problema es que esta info puede variar de longitud, a veces tiene celdas de más y a veces menos (todo se va a pegar en el libro 3)cuando abre el libro 2, necesito que ingrese ciertos datos, dichos datos se buscan primero por un rango de fechas, digamos una fecha inicial y otra final misma que se capturan desde un textbox1 y textbox2, una vez capturada la fecha se activa la búsqueda, la fecha en el libro 2 esta en la columna B, pero también tiene la hora en que se capturo dicho dato (el formato es DD/MM/YYYY HH/MM ahí es donde tengo problema porque no se como separar este formato para que se busque)una vez filtrados los datos deben se debe buscar ahora otro dato que esta en la columna L y de ahí copiar los que le pertenecen que están en la columna M y U, esos datos se deberán pegar con su correspondiente en las columnas B y C del libro 3, una vez pegados esos datos hay que hacer unas divisiones y restas. Bueno espero haber sido claro, de todos modos muchísimas gracias por tu atención y tiempo, espero me puedas ayudar!

1 respuesta

Respuesta
1
Disculpa por la tardanza en responder, aquí lo que te sugiero es que no dejes el rango de datos "fijo", mete tu código en un ciclo indicándole la celda en la cual va a comenzar a buscar hasta que cumpla la terminación de fin, básicamente es el mismo código con el que ya cuentas, solo metelo dentro del ciclo. Para tu segundo problema, existe una función que se llama izquierda y otra derecha, la cual te permite obtener un rango de caracteres comenzando desde izquierda y derecha, de esta forma podrás cortar la cadena solo hasta donde la necesitas, ¿en este caso solo la fecha no?
Saludos y espero te sirva mi respuesta.
Hola, muchas gracias por la respuesta; ¿Pero cómo meto todo eso en el ciclo que dices?
for x=0 to 12654 (numero total de fila en excel)
      if ("la celda que evaluas"= "") then
            exit for
       else
              "Aqui el codigo de tus comparaciones"
next

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas