Quantcast

Macro : Contrôler la valeur d'une cellule

classic Classic list List threaded Threaded
5 messages Options
Michel ANDREU-2 Michel ANDREU-2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Macro : Contrôler la valeur d'une cellule

Bonjour,

Soit une feuille Calc sur laquelle sont effectués des tris aléatoires
sur des numéros d'équipes devant se rencontrer, en colonnes. Les tris
sont déclenchés par des macros enregistrées et affectées à des boutons.
Des formules vérifient les doublons (équipes qui se sont déjà
rencontrées) et une cellule récapitule le total des doublons, en en tête.

Jusque là, je sais enregistrer des macros et les affecter à des boutons.
Et, tant qu'il y a des doublons on relance le tri par l'appui sur le
bouton concerné. Je souhaite automatiser cette procédure fastidieuse.

Il faut vérifier si le total des doublons est, ou non, égal à zéro. S'il
est différent de zéro, il faudrait un sous-programme qui relance la
macro de tri aléatoire concernée, jusqu'à ce que le total des doublons
soit zéro.

Avec LibreOffice, je ne sais pas prendre une valeur d'une cellule pour
la traiter en boucle (personne n'est parfait).

Si quelqu'un peut me donner la marche à suivre, il sera le bienvenu.

Merci par avance.


Ubuntu 12.04 - LibreOffice 3.5.3.2 et "Programmation OpenOffice.org et
LibreOffice" de Bernard Marcelly et Laurent Godard ; mais j'ai du mal à
m'y retrouver dans ce livre !

P.S. : Je connais bien le système des boucles, c'est l'approche avec la
programmation LibreOffice que je n'ai pas, ou très peu, expérimentée.


--
Envoyez un mail à [hidden email] pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être supprimés

pierre-yves samyn pierre-yves samyn
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Macro : Contrôler la valeur d'une cellule

Bonjour

Ci-joint un exemple comprenant 2 boutons et deux procédures.

Le bouton "tri aléatoire"  ne trie pas : il se contente d'ôter 1 de la
cellule A1.

Le bouton "Automatiser" lance autant de fois la procédure ci-dessus
qu'il est nécessaire pour arriver à zéro dans A1.

En plus, j'ai ajouté une "sortie de secours" : un nombre d'itérations
maximal autorisé (arbitrairement fixé à 10 dans l'exemple).

Dans ce cas d'école il est bien sûr inutile puisqu'on est sûr d'arriver
à zéro.  De ce que je comprends de ton programme... je ne suis pas
sûr et certain que cela soit le cas... il faut donc éviter de "boucler"
à l'infini.

Boucle.ods

Cordialement
Pierre-Yves
Michel ANDREU-2 Michel ANDREU-2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Macro : Contrôler la valeur d'une cellule

Merci Pierre-Yves,

C'est exactement la procédure souhaitée, sauf que la cellule A1 reste
désespérément à la valeur 7, après un clic sur le bouton "Automatiser" !

À partir de la gestion des macros, j'ai procédé à l'exécution au pas par
pas, mais pas plus de résultat.

Si je clique sur le bouton "Tri aléatoire", la décrémentation ne se fait
pas. Peut-être est-ce là le problème !

Y aurait-il incompatibilité entre nos deux versions de LibreOffice ?
_____________________________________________________________

Le 26/07/2012 08:12, pierre-yves samyn a écrit :

> Bonjour
>
> Ci-joint un exemple comprenant 2 boutons et deux procédures.
>
> Le bouton "tri aléatoire"  ne trie pas : il se contente d'ôter 1 de la
> cellule A1.
>
> Le bouton "Automatiser" lance autant de fois la procédure ci-dessus
> qu'il est nécessaire pour arriver à zéro dans A1.
>
> En plus, j'ai ajouté une "sortie de secours" : un nombre d'itérations
> maximal autorisé (arbitrairement fixé à 10 dans l'exemple).
>
> Dans ce cas d'école il est bien sûr inutile puisqu'on est sûr d'arriver
> à zéro.  De ce que je comprends de ton programme... je ne suis pas
> sûr et certain que cela soit le cas... il faut donc éviter de "boucler"
> à l'infini.
>
> http://nabble.documentfoundation.org/file/n3997779/Boucle.ods Boucle.ods
>
> Cordialement
> Pierre-Yves
>
>
>
> --
> View this message in context: http://nabble.documentfoundation.org/Macro-Controler-la-valeur-d-une-cellule-tp3997678p3997779.html
> Sent from the Users mailing list archive at Nabble.com.
>


--
Envoyez un mail à [hidden email] pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être supprimés
pierre-yves samyn pierre-yves samyn
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Macro : Contrôler la valeur d'une cellule

Suite...

Michel ANDREU-2 wrote
Y aurait-il incompatibilité entre nos deux versions de LibreOffice ?
Deux hypothèses plus probables :
1. Le document est en lecture seule
2. Tu n'as pas autorisé l'exécution des macros (via Outils> Options> LO> Sécurité)

Cordialement
Pierre-Yves

Michel ANDREU-2 Michel ANDREU-2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Macro : Contrôler la valeur d'une cellule

Le 26/07/2012 10:49, pierre-yves samyn a écrit :

> Suite...
>
>
> Michel ANDREU-2 wrote
>> Y aurait-il incompatibilité entre nos deux versions de LibreOffice ?
> Deux hypothèses plus probables :
> 1. Le document est en lecture seule
> 2. Tu n'as pas autorisé l'exécution des macros (via Outils> Options> LO>
> Sécurité)
>
> Cordialement
> Pierre-Yves
1. Effectivement le document est en lecture seule
2. L'exécution des macros est bien autorisée.

Maintenant cela fonctionne bien. Après enregistrement et modification
des permissions.

Merci pour ton aide et excuses-moi pour cette précipitation intempestive.

Michel

>
>
>
>
>
> --
> View this message in context: http://nabble.documentfoundation.org/Macro-Controler-la-valeur-d-une-cellule-tp3997678p3997815.html
> Sent from the Users mailing list archive at Nabble.com.
>


--
Envoyez un mail à [hidden email] pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être supprimés
Loading...