[RESUELTO] Busqueda no secuencial

Discute sobre la aplicación de hojas de cálculo

[RESUELTO] Busqueda no secuencial

Notapor Millocai » Jue Mar 15, 2018 9:40 am

Hola a todos, haber si me podéis ayudar, necesito hacer una función que me devuelva la fila donde encuentre un dato en concreto, recibiría la linea de comienzo y el dato a buscar. Hice una función secuencial y funcionaba bien el problema es que las búsquedas se hacen tediosas ya que es una hoja con resultados de partidos de fútbol, contiene mas de 48000 lineas y aumenta a una velocidad de 2 o 3 mil lineas semanales.

Se que debe haber alguna instrucción rápida que lo haga ya que el botón buscar y remplazar funciona de manera casi instantánea y mis búsquedas tardaban muchos minutos ya que necesito encontrar los últimos 10 partidos que jugo como visitantes o los últimos 10 como local, y se suele dar el caso que entre el primero de ellos y el ultimo puede haber 30000 partidos de separación.

Espero haber explicado bien lo que necesito, haber si me podéis orientar ya que soy un programador aficionado y sin demasiada experiencia.
Adjuntos
Captura lol.JPG
Última edición por Millocai el Dom Abr 08, 2018 10:46 am, editado 1 vez en total
OpenOffice 4.1.2 en Windows 10
Millocai
 
Mensajes: 22
Registrado: Lun Nov 04, 2013 12:38 pm

Re: Busqueda no secuencial

Notapor mauricio » Jue Mar 15, 2018 3:30 pm

Con un archivo de ejemplo, en vez de una imagen, con los que tienes, lo que esperas obtener y como lo has intentado resolver, ayudará a quien quiera ayudarte...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Avatar de Usuario
mauricio
 
Mensajes: 5929
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX

Re: Busqueda no secuencial

Notapor Millocai » Vie Mar 16, 2018 12:31 pm

Yo he intentado 2 cosas, primero recorrer la lista de partidos desde el ultimo al primero para buscar los 10 últimos partidos de cada equipo mediante un bucle, pero es tedioso ya que ese proceso para analizar una jornada que pueda tener 300 partidos es una locura, otra cosa que hice después fue crear un indice con los nombres de los equipos y el numero de fila de sus 10 últimos partidos pero para poder acceder rápidamente debía ordenarlos y claro ordenar mas de 8000 se hace aun mas tedioso.

Lo que necesito es acceder directamente a una celda escogiéndola por su contenido, o sea si busco los partidos del Real Madrid, quiero saltar de uno a otro inmediatamente como hace el botón buscar y reemplazar de la barra de herramientas, estoy casi seguro que debe haber una manera relativamente sencilla de hacerlo, pero lo desconozco.
OpenOffice 4.1.2 en Windows 10
Millocai
 
Mensajes: 22
Registrado: Lun Nov 04, 2013 12:38 pm

Re: Busqueda no secuencial

Notapor mauricio » Vie Mar 16, 2018 4:33 pm

Reitero, con un archivo de ejemplo, no obligas a quien quiera ayudarte a partir de cero, es una sencilla sugerencia que toma en cuenta el tiempo de quien quiera ayudarte.
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Avatar de Usuario
mauricio
 
Mensajes: 5929
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX

Re: Busqueda no secuencial

Notapor Millocai » Mié Mar 21, 2018 12:06 pm

Os envío una copia super reducida de la base de datos para que podáis ver lo que tengo hecho, aunque he comprobado que el archivo subido no carga el archivo con los partidos y no se porque, porque el original si lo hace.

Estoy desesperado porque la base de datos tiene mas de 52000 partidos ya y es horrorosamente lento la búsqueda de los equipos como yo lo hago y no se hacerlo de otra manera.

El funcionamiento es el siguiente al pulsar el botón Analizar jornada de la pestaña análisis, abre el archivo que le indiquemos (en este caso el 22_3.ods) y va cogiendo todos los partidos 1 a 1 y busca a los equipos en la pestaña BD y va pasando los datos oportunos al recuadro de la pestaña 90 minutos, una vez rellena el recuadro, envía los resultados a la pestaña análisis donde queda el resumen.

El problema es recorrer la base de datos secuencialmente para buscar unos equipos tras otros tarda unos 2 minutos por partido, los fines de semana a veces son mas de 1000 partidos a analizar. Lo que quiero es una función que me localice los equipos de manera inmediata (como hace la opción buscar y remplazar, que se posiciona de uno a otro rapidisimo) para coger los datos de esa linea y ya luego repetir esa función para obtener los datos de sus últimos 10 partidos.

No se si me he explicado bien, es que no se ni como empezar para mejorar las búsquedas.
Adjuntos
22_3.ods
(21.99 KiB) 47 veces
Pronosticador - copia.ods
(121.56 KiB) 49 veces
OpenOffice 4.1.2 en Windows 10
Millocai
 
Mensajes: 22
Registrado: Lun Nov 04, 2013 12:38 pm

Re: Busqueda no secuencial

Notapor Millocai » Mar Mar 27, 2018 10:31 am

Nadie sabe como encontrar una celda por su contenido de manera directa? en una locura buscarlo secuencialmente en archivos grandes, por favor al menos decirme por donde tirar y yo investigo mas, estoy atascado necesito ayuda de esos programadores crack de esta comunidad, la web no me deja mandar el archivo completo por su tamaño para que podáis comprobar lo que tarda en hacer una búsqueda.
OpenOffice 4.1.2 en Windows 10
Millocai
 
Mensajes: 22
Registrado: Lun Nov 04, 2013 12:38 pm

Re: Busqueda no secuencial

Notapor fornelasa » Mar Mar 27, 2018 10:55 pm

En mi caso, en cuando haya algo de tiempo intentaré ver tu consulta, por el momento:
Dice:
Búsqueda no secuencial


A manera de ejemplo: en este archivo puedes buscar por fecha, por liga, por Local, por Visitante, o por como gustes. Pulsa el cuadriculo azul para correr la macro.

Saludos.
Adjuntos
Busqueda no secuencial.ods
Búsqueda no secuencial
(97.39 KiB) 40 veces
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3234
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Busqueda no secuencial

Notapor Millocai » Jue Abr 05, 2018 10:35 am

Gracias por responderme fornelasa, últimamente he estado liado, miraré el archivo que has puesto y veré si me sirve, en cuanto lo haga te comento y mil gracias de nuevo por tu tiempo.
OpenOffice 4.1.2 en Windows 10
Millocai
 
Mensajes: 22
Registrado: Lun Nov 04, 2013 12:38 pm

Re: Busqueda no secuencial

Notapor Millocai » Sab Abr 07, 2018 11:59 am

Querido fornelasa, estuve mirando tu solución a mi problema, y podría servirme con algunas adaptaciones, lo he pasado al archivo grande original y me da error al cambiar los rangos, creo que el error reside en el numero de pagina, ya que tu solución venía en un archivo con una sola hoja y el mío tiene 4, al ser la tercera hoja los sheets les doy el valor 2 y cambio los rangos de filas y columnas por los originales y para mi sorpresa me dá error de ejecución. He intentado cambiar los datos pero no hay manera.

https://mega.nz/#!780H1DBa!0vqekxUsWDmM ... ISDlEsjmz8

Este es el archivo, si pudieses echarle un vistazo haber que le pasa porque mi nivel de programación no me da para arreglarlo. El lio esta en la pestaña "BD", mil gracias por todo.
OpenOffice 4.1.2 en Windows 10
Millocai
 
Mensajes: 22
Registrado: Lun Nov 04, 2013 12:38 pm

Re: Busqueda no secuencial

Notapor fornelasa » Sab Abr 07, 2018 8:27 pm

parece que teníamos unos ligeros errores de asignación de rangos.
Saludos, Federico.
https://mega.nz/#!2VUzxSYK!t0mXDNZjXoSEKr0c_CMEbwlJPV8J7571DT_Wg9Y5IP0
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3234
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Busqueda no secuencial

Notapor Millocai » Dom Abr 08, 2018 9:03 am

Fornelasa todo perfecto, no tengo palabras suficientes de agradecimiento, me has echado un cablazo ya que yo no era capaz de hacerlo. A tus pies.
OpenOffice 4.1.2 en Windows 10
Millocai
 
Mensajes: 22
Registrado: Lun Nov 04, 2013 12:38 pm


Volver a Calc

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 12 invitados