Bob a écrit :
Bob a écrit :
Grâce au livre, j'ai réussi à pondre une macro qui fonctionne. Les performances pour le formatage d'une zône de 1000 cellules sont correctes. Je pense que la méthode est bonne.

Le document peut être chargé ici :
http://ooo.bobiciel.com/tests_documents/Formatage_conditionel_a_ma_facon.ods
une nouvelle version qui intègre le code "Listener" proposé par François Gatto http://ooo.bobiciel.com/tests_documents/Formatage_conditionel_a_ma_facon_avec_Listener.ods

après ouverure du document, il faut cliquer une fois sur le bouton "Add_Listener" (c'est un proto ;-)

j'ai fait quelques essais :
- la mise sur écoute d'une zône de 1000 cellules provoque lors de la saisie des délais de latence de 2 à 3 secondes, c'est donc inexploitable - j'ai donc rusé en ne surveillant qu'une seule cellule qui contient une formule =SOMME(zone) et qui doit donc normalement écouter toute la zône pour actualiser le résultat. ça marche bien semble-t-il

j'essairai de faire qquechose de plus générique. L'idée est d'avoir un module générique que l'on ait juste à intégrer à n'importe quel document pour bébéficier de ce formatage conditionnel.
le seul paramètrage étant :
- la (ou les) zône(s) à formater
- le (ou les) préfixe(s) pour le nom des styles utilisés

je suis intéressé par tout retour

bonne soirée

bob


Par contre, j'ai plein de questions en suspend (voir les commentaires dans la macro). Je galère vraiement dans la compréhension de la logique de UNO. Si un expert pouvait jeter un oeil, ce serait sympa. En particulier pour la fonction qui se comporte différemment, selon qu'elle est appelée dans une cellule, ou dans une sub !

a+

Bob

Bonjour ,

J'ai examiné avec beaucoup d'intérêt votre feuille d'essai pour l'usage d'un listener qui guette des cellules modifiées. Il faut dire que c'est à la frontière haute de mes compétences sur OOo, là où mes incompétences sont plus denses! De ce fait je relis les passages du livre de programmation de OOo consacrées à ce thème. Ce qui m'avait semblé inhabituel est la manière dont les évènements étaient traités CellEvent_ mais il m'a semblé que le bouton remove_listener ne fonctionne pas. Vous avez eu l'idée de traiter l'écoute des 1000 cellules en mettant dans la cellule L1 un somme() sur les 1000 cellules de départ, mais je pense que les évènements qui déclenchent le recalcul ne sont peut être pas les mêmes que ceux qu'on guettait initialement, mais tout de même ça me paraît une bonne idée.

Voilà quelques réflexions que m'inspire vos essais ,il faut que je continue.....
Cordialement
Steve



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à