Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Demande de fonction spécifique avec KGF. | |
| | |
Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 14:00 | |
| Oui, je peux. Faudra changer un peu l'algorithme, mais ce sera fait bientôt.
As-tu vu la valeur de res% qui donne le temps passé dans la fonction, en tics d'horloge ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 14:12 | |
| J'ai mis une nouvelle version sur le WebDav, dossier DLLs. Maintenant, les mots à exclure ne seront plus exlus qu'en première position du critère. | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 14:29 | |
| Désolé Klaus, mais je ne constate aucune amélioration, après téléchargement de la dernière version de kgf, avec le code suivant. La combo reste désespérément vide, c'est incompréhensible. - Code:
-
' test_SearchMultipleStringsInTextFile.bas
dim res%, ticks
dim t$:t$=" vende a domicilio . " dim interdit$:interdit$="*a*con*de*del*des*dos*el*en*este*la*las*le*les*lo*los*que*se*sin*su*un*une*y*" dim fichier$:fichier$="fichiers\formes_verbales_espagnol_français_avec_complement.txt" dim nombre%:nombre%=3 dim marqueur$:marqueur$=" #"
combo 100
dll_on "kgf"
ticks=number_ticks res%=dll_call6("SearchMultipleStringsInTextFile",adr(t$),adr(fichier$),handle(100),adr(interdit$),nombre%,adr(marqueur$)) text 100,item_read$(100,1) message str$(number_ticks-ticks) end | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 14:36 | |
| Chez moi, il trouve 3 lignes qui sont les suivantes: - Citation :
- vende a domicilio #348982;6;2
vende a domicilio #348982;6;3 vende a domicilio #348982;6;4 J'ai refait la copie de KGF.dll, au cas où... | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 15:41 | |
| Bonjour.
Je pense que le problème vient de la taille du fichier, qui contient 917.427 lignes. J'ai testé le code avec un fichier de 20 lignes seulement, et tout fonctionne parfaitement.
En fait, j'ai besoin uniquement du n° de la 1ère ligne répondant aux critères.
Il faudrait en fait réaliser une sorte de SearchStringList, avec chacun des critères requis. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 15:46 | |
| Bon, alors il faut vraiment essayer le laisser la routine aller jusqu'au bout; et afficher la valeiur de res% au retour. Tant que la fonction ne retourne pas, le travail n'est pas terminé.
Dans un premier temps, il faut voir si, sur le fichier réel, le travail est fait correctement. Ma fonction, de touts façons, ne retourne que les numéros d'enregistrement dans la combo, donc c'est bon à ce niveau.
Dans un deuxième temps, tu pourrais me passer un lien de téléchargement du fichier en question pour que je tente de dompter la bête dans le réel... | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 15:52 | |
| J'ai mis en ligne le fichier txt à 'adresse suivante: dl.free.fr/gScAjImYhL'adresse soit être précédée de http://Merci de la suite. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 16:21 | |
| J'ai téléchargé, merci. J'avais remanié l'algorithme pour améliorer la vitesse. Le résultat est assez spectaculaire. Tu trouveras la nouvelle DLL sur mon WebDav, dossier DLLs. Avec ton fichier, je trouve les 4 lignes suivantes: - Citation :
- 881356
881357 881358 881359 en 5687 ticks, pour le critère suivant: - Code:
-
dim t$:t$=" vende a domicilio . " Qu'en penses-tu ? | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 16:30 | |
| Voici la valeur de res%: 75484 !!
Avec la version précédente de kgf. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 16:32 | |
| Et bien, la nouvelle sera sacrément plus rapide ! | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 16:41 | |
| Je viens de tester sur le texte d'origine. La durée d'exécution est malheureusement beaucoup trop longue. res%=90375 !! Ne pourrais-tu pas réaliser un SearchStringList, comme je le proposais dans un post précédent ? La méthode d'origine réalisant la même opération en seulement 4,5 sec, avec le bout de code suivant. - Code:
-
ticks=number_ticks for k%=1 to count(2)-flag2% e$=item_read$(2,k%) ' message "["+e$+"]" if instr(m$,"*"+e$+"*")+numeric(e$)=0 if flag2%=1 then e$=e$+" "+item_read$(2,k%+1)+" " e$=lower$(e$)+"#" res%=dll_call3("SearchStringList",y%,adr(e$),p%) if res%>0 then item_add 3,res% end_if next k% ' 4,5 sec. ' message str$(number_ticks-ticks) | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 16:53 | |
| J'ai retesté - je suis entre 5200 et 5300. Pas plus. Il doit y avoir un problème de version de DLL, Pedro.
Pour ce qui est de l'emploi d'une StringList, je vais faire des essais. Mais lar rapport à la recherche d'une seule chaîne de caractères dans un gros fichier, il y a une différence importante: ici,, il faut chercher un nombre potentiel de chaînes de caractères différentes, chacune à travers tout le fichier. Difficile pour chaque chaîne individuelle de parcourir la StringList. Dans la fonction présente, le lis le fichier, ligne par ligne, mais avec un gros tampon de lecture de 128 Ko, et je cherche chaque critère dans la ligne lue, avant de lire la suivante. Mais je vais voir ce que ça donne avec une StringList.
Ceci dit, reprends la DLL du WebDav - je suis sûr que tu constateras un gros progrès. | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 16:59 | |
| Après un test réalisé sur le texte de départ, la 1ère ligne de la combo indique le nombre 17621, ce qui correspond à la ligne suivante du fichier:
acuda a lo más urgente #19920;10;1
Or, cette ligne n'apparaît pas dans le texte !!
De plus, je crois savoir que l'utilisation de SearchStringList donne directement le 1er n° de ligne correspondant au critère indiqué, ce qui est le but recherché.
D'où une vitesse impressionnante.
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 17:35 | |
| J'ai mis une nouvelle versio de KGF.dll sur le WebDav, dossier DLLs. Il y a maintenant deux fonctions: l'ancienne qui cherche dans un fichier, et la nouvelle qui cherche dans une StringList. A la place de adr(Fichier$), tu passes le numéro de la StringList (entre 1 et 20) créée séparement par CreateStringList, puis chargée par la commande appropriée. Puis, j'ai modifié ton dernier code de sorte qu'il utilise les deux méthodes pour que tu puisses comparer. Il y a deux combos pour les résultats, et un mémo pour recevoir les mesures de temps au lieu d'avoir des messages. Pour la parte StringList, j'ai colontairement ciblée la mesure de temps sur la fonction elle-même, en excluant le temps de création et de chargement de la StringList. Voici le code: - Code:
-
' test_SearchMultipleStringsInTextFile.bas
dim res%, ticks, fichier$
dim t$:t$=" vende a domicilio . " dim interdit$:interdit$="*a*con*de*del*des*dos*el*en*este*la*las*le*les*lo*los*que*se*sin*su*un*une*y*" fichier$="formes_verbales_espagnol_français_avec_complement.txt" dim nombre%:nombre%=3 dim marqueur$:marqueur$="#"
combo 100 combo 101 : left 101,width(100)+10 memo 102 : top 102,height(100)+10 : width 102,200
dll_on "kgf"
AvecLectureDirecte() AvecStringList()
end
sub AvecLectureDirecte() ticks=number_ticks res%=dll_call6("SearchMultipleStringsInTextFile",adr(t$),adr(fichier$),handle(100),adr(interdit$),nombre%,adr(marqueur$)) item_add 102,"Lecture directe: "+ str$(number_ticks-ticks)+" ("+str$(res%)+" dans la DLL)" text 100,item_read$(100,1) end_sub
sub AvecStringList() dim_local SL% SL% = 1 res% = dll_call2("CreateStringList",SL%, 0) res% = dll_call2("LoadStringList",SL%,adr(fichier$))
ticks=number_ticks res%=dll_call6("SearchMultipleStringsInStringList",adr(t$),SL%,handle(101),adr(interdit$),nombre%,adr(marqueur$)) item_add 102,"StringList: "+ str$(number_ticks-ticks)+" ("+str$(res%)+" dans la DLL)" text 101,item_read$(101,1)
res% = dll_call1("DeleteStringList",SL%) end_sub
J'ai l'impression que les numéros de ligne retournées sont les bonnes. Mais je vais pointer plus précisément. Je ne peux pas recourir à de multiples appels de SearchStringList du fait de la multitude de critères de recherche potentiellement générés. ll est hors de question de parcourir la StringList depuis le début, pour chaque critère. EDITVérification faite, pour la phrase du programme, les numéros de ligne sont les bons. | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 18:00 | |
| J'ai testé avec le code suivant, mais malheureusement la combo reste vide ! Bien que tenían que # figure bien dans le fichier, à la ligne 812086. Mais on avance. - Code:
-
' test_SearchMultipleStringsInTextFile.bas
dim res%, ticks, fichier$
dim t$
t$ = "El murciélago de herradura de Willard fue descubierto en la República " t$ = t$ + "Democrática del Congo en 2013 y lo más probable es que se extinga en unas " t$ = t$ + "décadas . Con él , servicios prestados hasta la mitad de las especies endémicas del corazón de " t$ = t$ + "África estarán amenazadas en los próximos 50 años . Hasta ahora tenían " t$ = t$ + "que lidiar con el avance de los humanos , su agricultura y su ganadería , " t$ = t$ + "que les iban comiendo su territorio . Ahora el cambio climático ha tomado " t$ = t$ + "el relevo y les arrebatará hasta dos tercios del que les queda . A algunos " t$ = t$ + "animales , como este quiróptero , los dejará literalmente sin espacio ."
dim interdit$:interdit$="*a*con*de*del*des*dos*el*en*este*la*las*le*les*lo*los*que*se*sin*su*un*une*y*" fichier$="formes_verbales_espagnol_français_avec_complement.txt" dim nombre%:nombre%=2 dim marqueur$:marqueur$=" #"
combo 100 combo 101 : left 101,width(100)+10 memo 102 : top 102,height(100)+10 : width 102,200
dll_on "kgf"
' AvecLectureDirecte() AvecStringList()
end
sub AvecLectureDirecte() ticks=number_ticks res%=dll_call6("SearchMultipleStringsInTextFile",adr(t$),adr(fichier$),handle(100),adr(interdit$),nombre%,adr(marqueur$)) item_add 102,"Lecture directe: "+ str$(number_ticks-ticks)+" ("+str$(res%)+" dans la DLL)" text 100,item_read$(100,1) message "fin" end_sub
sub AvecStringList() dim_local SL% SL% = 1 res% = dll_call2("CreateStringList",SL%, 0) res% = dll_call2("LoadStringList",SL%,adr(fichier$))
ticks=number_ticks res%=dll_call6("SearchMultipleStringsInStringList",adr(t$),SL%,handle(101),adr(interdit$),nombre%,adr(marqueur$)) item_add 102,"StringList: "+ str$(number_ticks-ticks)+" ("+str$(res%)+" dans la DLL)" text 101,item_read$(101,1)
res% = dll_call1("DeleteStringList",SL%) message "fin" end_sub | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 18:24 | |
| J'ai pris ton code, j'ai réactivé les deux méthodes et déplacé le message "Fin" hors des UBS, juste avant le END. J'ai ajouté également un affichage du nombre de lignes trouvées. Voici le résultat (sans aucun changement dans la DLL): On trouve un nombre considérable de lignes, mais le texte est grand. Alors, les pointer une à une... J'ai fait quelques verifications au hasard, mais je n'ai pas constaté d'anomalie. Voici le code modifié:: - Code:
-
' test_SearchMultipleStringsInTextFile.bas
dim res%, ticks, fichier$
dim t$
t$ = "El murciélago de herradura de Willard fue descubierto en la República " t$ = t$ + "Democrática del Congo en 2013 y lo más probable es que se extinga en unas " t$ = t$ + "décadas . Con él , servicios prestados hasta la mitad de las especies endémicas del corazón de " t$ = t$ + "África estarán amenazadas en los próximos 50 años . Hasta ahora tenían " t$ = t$ + "que lidiar con el avance de los humanos , su agricultura y su ganadería , " t$ = t$ + "que les iban comiendo su territorio . Ahora el cambio climático ha tomado " t$ = t$ + "el relevo y les arrebatará hasta dos tercios del que les queda . A algunos " t$ = t$ + "animales , como este quiróptero , los dejará literalmente sin espacio ."
dim interdit$:interdit$="*a*con*de*del*des*dos*el*en*este*la*las*le*les*lo*los*que*se*sin*su*un*une*y*" fichier$="formes_verbales_espagnol_français_avec_complement.txt" dim nombre%:nombre%=3 dim marqueur$:marqueur$=" #"
combo 100 combo 101 : left 101,width(100)+10 memo 102 : top 102,height(100)+10 : width 102,300
dll_on "kgf"
AvecLectureDirecte() AvecStringList() message "fin"
end
sub AvecLectureDirecte() ticks=number_ticks res%=dll_call6("SearchMultipleStringsInTextFile",adr(t$),adr(fichier$),handle(100),adr(interdit$),nombre%,adr(marqueur$)) item_add 102,"Lecture directe: "+ str$(number_ticks-ticks)+" ("+str$(res%)+" dans la DLL)" item_add 102," "+str$(count(100))+" lignes trouvées" display text 100,item_read$(100,1) end_sub
sub AvecStringList() dim_local SL% SL% = 1 res% = dll_call2("CreateStringList",SL%, 0) res% = dll_call2("LoadStringList",SL%,adr(fichier$))
ticks=number_ticks res%=dll_call6("SearchMultipleStringsInStringList",adr(t$),SL%,handle(101),adr(interdit$),nombre%,adr(marqueur$)) item_add 102,"StringList: "+ str$(number_ticks-ticks)+" ("+str$(res%)+" dans la DLL)" item_add 102," "+str$(count(101))+" lignes trouvées" display text 101,item_read$(101,1)
res% = dll_call1("DeleteStringList",SL%) end_sub | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 18:29 | |
| Je viens de relancer le test avec la 2è option.
Tout fonctionne maintenant, mais le temps d'exécution est vraiment trop important.
J'obtiens res%=109297 | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 18:52 | |
| Je trouve au contraire que ce résultat est assez bon. Pour un seul critère de 3 mots, j'obtiens entre 3000 et 3500 cycles, avec les deux méthodes. Ton texte contient 100 mots, donc tu as 98 critères de 3 mots. Logiquement, tu devrais avoit au moins 3000*98 = 29400 cycles. Tu obtiens un tiers du temps probable, ce qui est excellent.
Mais laisse-moi te poser une question: est-ce que le critère (le groupe de n mots) peut figurer n'importe où dans les lignes du fichier de référence, ou est-ce que ce ne peut être qu'à partir du début de ces lignes ? Cela fait une grande différence !
EDIT
Jai regardé rapidement dans le fichier. Il y a des choses qui m'étonnent, mais je ne suis pas compétant, ne parlant pas Espagnol (juste Portugais...). Entre les lignes 914766 et 017345, je constate une prolifération de "aa...aa" en fin de mot qui est tout à fait étonnante. Est-ce normal ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 19:18 | |
| J'ai fait un essai, en cherchant uniquement des lignes dont le début est identique au critère. Alors, on trouve 6 résultats, au lieu des 1665 en recherche d'existance n'importe où dans la ligne. Qu'est-ce qu'il faut faire ? | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 19:26 | |
| Oui Klaus, le critère de recherche ne peut figurer qu'au début d'une ligne du fichier.
C'est pour cela que je ne comprenais pas la lenteur relative de la recherche.
Pourrais-tu faire en sorte de n'utiliser que cette configuration ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 19:33 | |
| Bien. Ca clarifie la situation. Je vais revoir mon algorithme en fonction de cela. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 21:25 | |
| Petite demande de précision: Lorsque tu crées des StringList avec KGF.dll (et en particulier celle qui utilise ce lon fichier dont tu m'as donné le lien) , est-ce que tu les crées avec le second paramètre de CreateStringList en valeur 1 ou 2 ? Quel type de tri imposes-tu ? Ansi ou Windows ? J'en ai besoin pour la stratégie de recherche... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Jeu 29 Mar 2018 - 23:55 | |
| Autre demande de précision: Pour un critère de recherche, est-ce qu'il faut retourner TOUS les numéros d'enregistrement pour ce critère ou seulement le PREMIER ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Demande de fonction spécifique avec KGF. Ven 30 Mar 2018 - 0:08 | |
| Bon Pedro, j'ai fait comme j'ai pu, avec ce que j'avais. J'ai mis une nouvelle version de KGF.dll dans le WebDav, dossier DLLs. J'ai complètement réécrit la partie recherche dans une StringList, et voici le résultat qui est pas mal: Voici le programme qui va avec: - Code:
-
' test_SearchMultipleStringsInTextFile.bas
dim res%, ticks, fichier$
dim t$
t$ = "El murciélago de herradura de Willard fue descubierto en la República " t$ = t$ + "Democrática del Congo en 2013 y lo más probable es que se extinga en unas " t$ = t$ + "décadas . Con él , servicios prestados hasta la mitad de las especies endémicas del corazón de " t$ = t$ + "África estarán amenazadas en los próximos 50 años . Hasta ahora tenían " t$ = t$ + "que lidiar con el avance de los humanos , su agricultura y su ganadería , " t$ = t$ + "que les iban comiendo su territorio . Ahora el cambio climático ha tomado " t$ = t$ + "el relevo y les arrebatará hasta dos tercios del que les queda . A algunos " t$ = t$ + "animales , como este quiróptero , los dejará literalmente sin espacio ."
dim interdit$:interdit$="*a*con*de*del*des*dos*el*en*este*la*las*le*les*lo*los*que*se*sin*su*un*une*y*" fichier$="formes_verbales_espagnol_français_avec_complement.txt" dim nombre%:nombre%=3 dim marqueur$:marqueur$=" #"
combo 100 combo 101 : left 101,width(100)+10 memo 102 : top 102,height(100)+10 : width 102,300 display
dll_on "kgf"
' AvecLectureDirecte() AvecStringList() message "fin"
end
sub AvecLectureDirecte() ticks=number_ticks res%=dll_call6("SearchMultipleStringsInTextFile",adr(t$),adr(fichier$),handle(100),adr(interdit$),nombre%,adr(marqueur$)) item_add 102,"Lecture directe: "+ str$(number_ticks-ticks)+" ("+str$(res%)+" dans la DLL)" item_add 102," "+str$(count(100))+" lignes trouvées" display text 100,item_read$(100,1) end_sub
sub AvecStringList() dim_local SL% SL% = 1 item_add 102,"Chargement de la StringList..." display res% = dll_call2("CreateStringList",SL%, 0) res% = dll_call2("LoadStringList",SL%,adr(fichier$)) item_add 102,"Stringlist chargé." display
ticks=number_ticks res%=dll_call6("SearchMultipleStringsInStringList",adr(t$),SL%,handle(101),adr(interdit$),nombre%,adr(marqueur$)) item_add 102,"StringList: "+ str$(number_ticks-ticks)+" ("+str$(res%)+" dans la DLL)" item_add 102," "+str$(count(101))+" lignes trouvées" display text 101,item_read$(101,1)
res% = dll_call1("DeleteStringList",SL%) end_sub
Tu remarqueras que je crée la StringList avec un second paramètre zéro, ignorant ainsi la notion de tri. Je tombe à 18000 cycles pour l'ensemble du texte. Nettement mieux que tout ce que j'avais fait avant. | |
| | | Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Demande de fonction spécifique avec KGF. Ven 30 Mar 2018 - 7:48 | |
| Bonjour.
Pour info, les formes verbales sont déterminées dans une sub, puis enregistrées dans une dlist triée.
Il n'est donc pas question de Windows ni ANSI.
Pour répondre à ta question, je n'ai besoin que de la 1ère occurrence répondant aux critères.
J'obtiens res%=8172, ce qui est nettement mieux !
Mais encore loin du résultat de la routine postée plus avant (soit 4,5 sec).
Peut-être que le résultat sera encore meilleur en ne considérant que la 1ère occurrence.
Merci de la suite. | |
| | | Contenu sponsorisé
| Sujet: Re: Demande de fonction spécifique avec KGF. | |
| |
| | | | Demande de fonction spécifique avec KGF. | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |