Jump to content

Archived

This topic is now archived and is closed to further replies.

mennoch

Macro que elimina duplicados y coloca tramos

Recommended Posts

Buenas,

No se si esto se puede hacer con macros, espero que me podais ayudar en el caso de poderse realizar.

Tengo una seria de personas con unas fechas de inico de tramo y fin de tramo, cada tramo con un % de jornada. Necesito que si para cada tramo en la misma persona tiene el mismo % de jornada se elimine.

Que si para cada tramo su % de jornada es diferente se quede como esta y si tiene dos tramos iguales que se quede con su primera fecha de inicio tramo y la ultima fecha de fin tramo.

Dejo un archivo en el cual lo esplico con un ejemplo, de poderse hacer mi vida seria mucho mas sencilla.

Gracias.

Ayuda Tramos.xls

Share this post


Link to post
Share on other sites

En mis ratos estoy intentado sacarlo, pero con mis pauperrimos conocimientos de macros no doy con ello. Si alguien arroja algo de luz al tema, estare muy agradecido.

Share this post


Link to post
Share on other sites

Esta interesante el problema tratare de dedicarle algo de tiempo, por lo menos te echare la mano en:

"""Si todos los tramos para cada persona tienen el mismo % jornada se eliminan"""

y quizas en:

"""Si tiene diferentes %jornada para cada tramo se deja igual"""

a la otra condicion como que no le entendi!

Share this post


Link to post
Share on other sites

En el archivo viene mas o menos explicada.

Si por ejemplo un trabajador tiene dos tramos a 50% y el primero tiene una fecha inicial del 01/01/2013 y su fecha final es del 31/01/2013 y su segundo tramo tiene fecha inicial 01/02/2013 y fecha final 28/02/2013 se deberia quedar un solo tramo que fuese la fecha inicial del primer tramo 01/01/2013 y la fecha final del segundo tramo 28/02/2013.

No se si la explicacion resuelve tus dudas.

Muchas gracias por tu tiempo

Share this post


Link to post
Share on other sites

Os lo agradezco muchisimo, yo miro por internet todo lo que puedo pero mis conocimientos no das mucho de si. De veras, muchisimas gracias por vuestro tiempo y esfuerzo.

Share this post


Link to post
Share on other sites
En el archivo viene mas o menos explicada.

Si por ejemplo un trabajador tiene dos tramos a 50% y el primero tiene una fecha inicial del 01/01/2013 y su fecha final es del 31/01/2013 y su segundo tramo tiene fecha inicial 01/02/2013 y fecha final 28/02/2013 se deberia quedar un solo tramo que fuese la fecha inicial del primer tramo 01/01/2013 y la fecha final del segundo tramo 28/02/2013.

No se si la explicacion resuelve tus dudas.

Muchas gracias por tu tiempo

Ok! ya me quedo claro!

ya solo me falta esto que me acabas de explicar, lo demas ya lo tengo! Vaya... pense que seria algo sencillo, me llevo mucho tiempo. Como para cobrar por el procesamiento... jajaja ok todo sea por aprender, mejorar mis habilidades y no aburrirme ahora que estoy desempleado! yo creo que al rato o mañana ya lo tienes!

Share this post


Link to post
Share on other sites
Ok! ya me quedo claro!

ya solo me falta esto que me acabas de explicar, lo demas ya lo tengo! Vaya... pense que seria algo sencillo, me llevo mucho tiempo. Como para cobrar por el procesamiento... jajaja ok todo sea por aprender, mejorar mis habilidades y no aburrirme ahora que estoy desempleado! yo creo que al rato o mañana ya lo tienes!

Llevo yo mas de una semana dando vueltas y no he sido capaz, eso si, mis conocimientos en macros es pesimo y eso que tengo unos cuantos libros pero .......se me hace complicado.

Muchas gracias

Share this post


Link to post
Share on other sites

Bien... despues de mucho sufrimiento y dolor... jajaja aqui esta, pruebala y comentas. Realmente subestime el problema o no soy tan bueno como pensaba... en fin!

Desde hace tiempo que no me entretenia con un problema del foro... son muy pocos los que despiertan mi interes, entre otras cosas mas...

Tu consulta ha servido para darme cuenta de que debo contar con algun tipo de clase o estructura para poder manipular arrays en memoria de manera mas rapida y practica.

Prueba la macro... la programe suponiendo que el listado de datos a procesar nunca superara las 65500 filas!

Definitivamente creo que se puede compactar y optimizar mas el codigo, pero se necesita mas tiempo a invertir...

Saludos!

Ayuda Tramos.zip

Share this post


Link to post
Share on other sites

Impresionante !!

Esta perfecto y me acaba de funcionar con 5500 filas sin ningun problema. Me alegro que te lo pasases "bien" con este problema, aunque para ti haya sido un problemilla jejejejejeje

Muchisimas gracias tio, ojala se me diese la mitad de bien que a ti.

Tan solo una preguntilla, donde puedo poner un boton para ejecutar la macro sin que esta termine por borrarmelo, pq si agrego alguna columna antes de la tabla **** la macro y aunque intento cambiar los rangos y tal pero hay muchas cosas que no controlo y no termino por hacerlo bien.

Saludos!

Share this post


Link to post
Share on other sites
Impresionante !!

Esta perfecto y me acaba de funcionar con 5500 filas sin ningun problema. Me alegro que te lo pasases "bien" con este problema, aunque para ti haya sido un problemilla jejejejejeje

Muchisimas gracias tio, ojala se me diese la mitad de bien que a ti.

Tan solo una preguntilla, donde puedo poner un boton para ejecutar la macro sin que esta termine por borrarmelo, pq si agrego alguna columna antes de la tabla **** la macro y aunque intento cambiar los rangos y tal pero hay muchas cosas que no controlo y no termino por hacerlo bien.

La verdad es que si me hizo pensar, jajaja!

Y se te puede dar igual o mejor que yo, solo es cuestion de interes, estudio y sobre todo mucha practica!

En cuanto a lo del boton... en la ficha de programador (en la cinta de opciones), en la parte de controles, le das en insertar y en controles de formulario le das en boton, con lo cual se insertara un boton que de inmediato te pedira que mecro deseas asignar a este para que se ejecute cuando le das click. En caso de no tener habilitada la ficha programador, hay muchos tutoriales en internet, no recuerdo como se hace en excel 2010, ya que yo tengo 2007.

que bueno que te funciono la macro! de echo tu problema me ha insiprado para crear un clase en VBA/Excel para poder solucionar de manera rapida y practica problemas de este tipo!

Saludos!

Share this post


Link to post
Share on other sites

Me alegro que tu tambien hayas salido ganando algo, aunque sea experiencia jejejejeje

Si lo del boton sabia hacerlo pero al crearlo y al ejecutar la macro se me borra todo lo que esta a la derecha de la tabla, boton incluido. He agrandado la fila 1, donde los encabezados y ahi he creado el boton.

Gracias nuevamente.

Saludos!

Share this post


Link to post
Share on other sites



×
×
  • Create New...

Important Information

Privacy Policy