[Résolu][Calc] Mise à jour boutons radio

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur: Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !

[Résolu][Calc] Mise à jour boutons radio

Messagepar Roby68 » 22 Août 2019 17:47

Bonjour le Forum,

Ne trouvant pas la solution adéquat à mon petit problème de gestion de boutons radio, je me retourne vers vous.

Préférant du code manuel que l'enregistreur de macro (plus concis), j'aimerai arriver à ses différents résultats :
Chaque bouton radio est appelé Chx 1, 2, 3 etc.
Pour le 1er exemple : si je clic sur Oui du Bouton radio "Chx 1" les autres boutons radio doivent avoir des valeurs différentes (valeur dans les encadrés).

Si Chx 1 = Oui → → Chx 2 = Non / Chx 3 = Non / Chx 4 = Non / Chx 5 = Non / Chx 6 = Vide

Si Chx 1 = Non → → Chx 2 = Oui / Chx 3 = Vide / Chx 4 = Vide / Chx 5 = Vide / Chx 6 = Vide

Si Chx 2 = Oui → → Chx 1 = Non / Chx 3 = Vide / Chx 4 = Vide / Chx 5 = Vide / Chx 6 = Vide

Si Chx 2 = Non → → Chx 1 = Oui / Chx 3 = Vide / Chx 4 = Vide / Chx 5 = Vide / Chx 6 = Vide

Peut être que le code n'est pas adapté, certains boutons radio répondent bien mais pas le 1er bouton mentionné de la liste dans chaque macro, je suis obligé de faire 2 fois pour que cela change.
Le code est présent.

merci d'avance à ceux qui pourront m'aider.
Bonne soirée à tous
Pièces jointes
Gestion Btn Radio.ods
(120.75 Kio) Téléchargé 17 fois
Dernière édition par Roby68 le 23 Août 2019 15:31, édité 2 fois.
LibreOffice 5.2.6.2 / LibreOffice 5.3 ( au Bureau ) "Par obligation de version".
Win 7 Pro

LibreOffice 6.2.5.2 ( Maison )
Win 10 Pro
Avatar de l’utilisateur
Roby68
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 66
Inscrit le : 09 Oct 2013 22:12

Re: [Calc] Mise à jour boutons radio

Messagepar OOotremer971 » 23 Août 2019 00:23

Bonjour,

Sous réserve d'avoir correctement compris. Il faut systématiquement passer par un raz pour que le processus fonctionne correctement car le contenu des cellules liées aux boutons radio influence négativement le comportement.

Une seule macro suffit pour gérer tous les cas :
Code : Tout sélectionner   AgrandirRéduire
sub Main(oevt)
Raz
'xray oevt
Dim oDoc as Object, MesFeuilles as Object, maFeuille as Object
oDoc = ThisComponent
MesFeuilles = oDoc.Sheets
maFeuille = MesFeuilles.getByName("M")
Select case oevt.Source.Model.Tag   
   case "Chx1oui"
      maFeuille.getCellRangeByName("S3").SetString("O")
      maFeuille.getCellRangeByName("S7").SetString("N")
      maFeuille.getCellRangeByName("T7").SetString("N")
      maFeuille.getCellRangeByName("U7").SetString("N")
      maFeuille.getCellRangeByName("V7").SetString("")
      maFeuille.getCellRangeByName("S9").SetString("N")
      
   Case "Chx1non"
      maFeuille.getCellRangeByName("S3").SetString("N")
      maFeuille.getCellRangeByName("S7").SetString("O")
      maFeuille.getCellRangeByName("T7").SetString("")
      maFeuille.getCellRangeByName("U7").SetString("")
      maFeuille.getCellRangeByName("V7").SetString("")
      maFeuille.getCellRangeByName("S9").SetString("")

   Case "Chx2oui"
      maFeuille.getCellRangeByName("S7").SetString("O")
      maFeuille.getCellRangeByName("S3").SetString("N")
      maFeuille.getCellRangeByName("T7").SetString("")
      maFeuille.getCellRangeByName("U7").SetString("")
      maFeuille.getCellRangeByName("V7").SetString("")
      maFeuille.getCellRangeByName("S9").SetString("")

   Case "Chx2non"
      maFeuille.getCellRangeByName("S7").SetString("N")
      maFeuille.getCellRangeByName("S3").SetString("O")
      maFeuille.getCellRangeByName("T7").SetString("")
      maFeuille.getCellRangeByName("U7").SetString("")
      maFeuille.getCellRangeByName("V7").SetString("")
      maFeuille.getCellRangeByName("S9").SetString("")
End Select
End Sub


et le fichier pour tester :
Pièces jointes
GestionBtnRadio_Mod1.ods
(119.92 Kio) Téléchargé 19 fois
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Ubuntu
OpenSuse Leap
Avatar de l’utilisateur
OOotremer971
HédOOniste
HédOOniste
 
Message(s) : 2190
Inscrit le : 16 Avr 2010 14:31

Re: [Calc] Mise à jour boutons radio

Messagepar Roby68 » 23 Août 2019 09:52

Bonjour le Forum, OOotremer971,

Merci de consacrer un peu de temps à mon problème,
le Choix 1 Oui et Non fonctionne bien
Le Choix 2 Oui et Non fonctionne également bien

Les choix 3 et 4 Oui ne fonctionnent pas.

Pour la question de tout réinitialiser et mettre à Vide, je voulais éviter, car certains choix pouvaient se faire à partir du Choix 3 avant les deux principaux 1 et 2.
C'est quand même une bonne avancée, pour y remédier voir peut être le Raz plus sélectif.

Bonne journée à toi et au Forum
LibreOffice 5.2.6.2 / LibreOffice 5.3 ( au Bureau ) "Par obligation de version".
Win 7 Pro

LibreOffice 6.2.5.2 ( Maison )
Win 10 Pro
Avatar de l’utilisateur
Roby68
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 66
Inscrit le : 09 Oct 2013 22:12

Re: [Calc] Mise à jour boutons radio

Messagepar Dredd » 23 Août 2019 10:31

Bonjour,

Je pense que tu fais un mauvais usage des boutons d'options. Une option est exclusive. Tout choix annule les autres.

Dans le cas que tu donnes, ce sont plutôt des cases à cocher.

:idea:
Propulsé par OpenOffice 4.1.6 sous Windows 10 x64
Avatar de l’utilisateur
Dredd
Membre cOOnverti
Membre cOOnverti
 
Message(s) : 362
Inscrit le : 24 Mai 2006 10:15
Localisation : Mega-City One

Re: [Calc] Mise à jour boutons radio

Messagepar OOotremer971 » 23 Août 2019 11:39

Roby68 a écrit:Les choix 3 et 4 Oui ne fonctionnent pas.

Je te donne un exemple pour le quatre possibilités que tu proposes dans ton énoncé. A aucun moment tu mentionne un choix 3 ou 4, et rien ne t'empêche d'adapter le code pour ces autres choix, non ?

A+
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Ubuntu
OpenSuse Leap
Avatar de l’utilisateur
OOotremer971
HédOOniste
HédOOniste
 
Message(s) : 2190
Inscrit le : 16 Avr 2010 14:31

Re: [Calc] Mise à jour boutons radio

Messagepar Roby68 » 23 Août 2019 15:31

Bonjour le Forum, OOotremer971, Dredd

Oui dans l'exemple les boutons radio 3 et 4 fonctionnent bien et je ne l'avais pas mentionné.

Pour ce qui est des cases à cocher, j'y avais bien pensé, mais ils restent limités car les choix Non sont importants dans le formulaire final.

Merci dans tous cas à vous deux

Bonne fin après midi et bon Week-end
LibreOffice 5.2.6.2 / LibreOffice 5.3 ( au Bureau ) "Par obligation de version".
Win 7 Pro

LibreOffice 6.2.5.2 ( Maison )
Win 10 Pro
Avatar de l’utilisateur
Roby68
Membre OOrganisé
Membre OOrganisé
 
Message(s) : 66
Inscrit le : 09 Oct 2013 22:12


Retour vers Macros et API

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Doudou74 et 5 invité(s)