Le 11/04/2019 à 22:44, C Fourcroy a écrit : > Bonsoir, > > Fondamentalement, un traitement par une fonction du tableur va > toujours beaucoup plus vite qu'un traitement par une macro en Basic > car elles sont programmées dans un langage beaucoup plus efficace et > proche du langage machine. Mettre à jour une trentaine de zones > nommées ne dépassera pas une fraction de seconde. Comparé à la macro > de mise à jour de la liste que j'avais proposé il y a quelque temps il > y a un facteur 100 à 1000 en faveur de l'utilisation de la fonction. > Ceci étant, créer/modifier des zones nommées peut être long et > fastidieux surtout quand on n'en a pas l'habitude. Il faut voir si > l'investissement en temps en vaut la peine. > > Christian F
Voici un exemple pour remplacer une zone : DECALER($voies.$A$1;0;0;6;NBVAL($voies.$A$1:$ZZ$1)) Mais, c'est dans cette expression : RECHERCHEH(C$20;DECALER($voies.$A$1;0;0;6;NBVAL($voies.$A$1:$ZZ$1));2;0) Ne serait-il alors pas plus efficace d'écrire : RECHERCHEH(C$20;$voies.$A$1:$ZZ$6;2;0) Et dans ce cas, si par hasard, on passe plus loin que ZZ... Le programme ne marchera plus ! Il faudrait que je mette quoi alors ? C'est vraiment pour ça que je me demande si une macro qui ne prend en compte aucun maximum possible n'est pas une bonne idée finalement ! -- Amicalement vOOotre Troumad Alias Bernard SIAUD mon site : http://troumad.org : AD&D maths WEB... Pour la liberté http://www.developpez.net/forums/f17/systemes/linux/ N'envoyez que des documents avec des formats ouverts, comme http://fr.libreoffice.org -- Envoyez un mail à [email protected] pour vous désinscrire Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/ Privacy Policy: https://www.documentfoundation.org/privacy
