Le 02/04/2019 à 06:47, Bernard Siaud alias Troumad a écrit :
Le 02/04/2019 à 00:19, C Fourcroy a écrit :
En fait, pour ce qui est de manipuler des contrôles de formulaire, je ne connais pas . Mais est-ce une obligation ? Puisque l'on est dans Calc, il est possible aussi de passer par les listes  de Données-Validité, là les chose sont plus simples.


Sauf qu'il va falloir que je comprenne comment marche ces listes... Est-il possible de lancer une macro à chaque changement de sélection dans la liste ?


Oui. Il faut interroger l'événement de feuille "Contenu modifié".

Pour associer cet événement à une macro, il faut créer la macro puis aller dans le menu Feuille > Evénements de la feuille.

Note que puisque cet événement s'applique à tout changement de contenu de toute cellule, il faut, dans la macro, commencer par interroger la cellule actuelle. Le paramètre entrant de la macro permet de le faire (il porte l'info sur la cellule modifiée).

Voir l'exemple ci-dessous :

8< ---------------------------------------------------
Sub OnCellChange(ByRef pEvt As Object)
'répond aux modifs sur une cellule de la feuille

        'on vérifie que la cellule active est dans la plage surveillée
        'définie par les numéros de colonne (COL_CHG) et de ligne (ROW_CHG)
If (pEvt.CellAddress.Column = COL_CHG) And (pEvt.CellAddress.Row = ROW_CHG) Then
                DoSomething()
        End If

End Sub 'OnCellChange
--------------------------------------------------- >8


Bien cordialement,
--
Jean-Francois Nifenecker, Bordeaux


--
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

Répondre à