XL 2016 CheckBox et OptionButon

Choco2x

XLDnaute Occasionnel
Bonjour à toutes et à tous !

J'ai trouvé beaucoup de réponses concernant ce que je cherche, mais chaque fois soit je n'ai pas réussi à l'adapter, soit ça ne correspondait pas à mes besoins...
Précision : je suis d'un niveau très faible en VBA, si je suis déjà allé aussi loin c'est uniquement grâce à votre aide (surtout JM27 🙏).

J'ai deux problèmes :
- J'ai un formulaire avec des CheckBox, et quand je coche les cases pour les retrouver dans la feuille "Commande", les résultats vont toujours sur la ligne 3
, remplaçant chaque fois le résultat précédent, au lieu d'aller juste en dessous, sur la ligne correspondant à la nouvelle entrée du formulaire.

- Ensuite, mais c'est plus optionnel, je n'arrive pas à remplacer les ComboBoxCivilité et ComboTps par des OptionButon, tout en résupérant les résultats dans la feuille "Commande" pour les deux, et dans la feuille "BD Patients" pour la civilité.

La userform est en vrac, je sais, mais j'ai changé si souvent que j'attends à présent que tout fonctionne pour la mettre en forme...

Quelqu'un pourrait-il m'aider ?...

Merci d'avance...
 

Pièces jointes

  • Transport Hopital 8.6 OK avant tentative BR pour XLD.xlsm
    85.6 KB · Affichages: 76

Choco2x

XLDnaute Occasionnel
moi je sais que cela ne marche pas( cela plante) sans parler du transfert des données.
Mets toi à la place des infirmières quand elle verront un déboggage , et de plus quand elles verront une ligne de données écrasée par une autre.
et je sais pourquoi.
un indice : voir dans le #111

Quand je disais que ça marchait, je voulais dire "une fois repris la correction de ton fichier !" :D
C'est pour çà que je disais "sauf erreur de ma part", car je pense n'avoir oublié aucune modification...
Sauf pour obliger la saisie du mode de transport, ne pas avoir "contentions" alors qu'après réflexion finalement on a choisi "vsl", etc, mais là je verrai çà demain...
 

JM27

XLDnaute Barbatruc
Je ne sais si j'ai compris
Sauf pour obliger la saisie du mode de transport, ne pas avoir "contentions" alors qu'après réflexion finalement on a choisi "vsl", etc, mais là je verrai çà demain...
pour moi c'est de l'Hébreu
la logique pour moi veut :
que l'on sélectionnes ambulance ou VSL d'abord et ensuite si ambulance on affichage de la frame avec les checkBox.
et non pas affichage de la frame et si une des valeurs est saisie , on coche Ambulance.

pour info : les tags des champs dans mon userform sont gérés différemment . ( il sont documentées par le programme)
 

ChTi160

XLDnaute Barbatruc
Re
Pour éviter l'erreur au niveau des "OptionButton" et autres "CheckBox" ex : Ambulance par exemple
j'ai modifié la procédure qui efface les Controls.
car .Value ="" sur ces Controls ca passe pas Lol
VB:
Sub RAZDonnées()
     ' remise à blanc des objets de 'userform ayant une propriété tag
     For Each ctrl In Me.Controls
             If ctrl.Tag <> "" Then
                Select Case TypeName(ctrl)
                       Case "TextBox"
                         ctrl.Text = ""
                       Case "ComboBox"
                         ctrl.Value = ""
                       Case "CheckBox"
                         ctrl.Value = False
                       Case "OptionButton"
                         ctrl.Value = False
                End Select
             End If
         Next
         ' J'efface la liste du déroulant prénom
    Me.ComboPrénom.Clear
End Sub
jean marie
 

JM27

XLDnaute Barbatruc
Re celle qui était dans mon fichier
Je savais que le pb étais la

VB:
Sub RAZDonnées()
     ' remise à blanc des objets de 'userform ayant une propriété tag
     For Each Ctrl In Me.Controls
             If Ctrl.Tag <> "" Then
                    
                    If TypeName(Ctrl) = "OptionButton" Or TypeName(Ctrl) = "CheckBox" Then
                        Ctrl.Value = False
                        Ctrl.BackColor = &H80000018
                    Else
                        Ctrl.Value = ""
                        Ctrl.BackColor = &H80000005
                    End If
            End If
         Next
         ' J'efface la liste du déroiulant prénom
    Me.ComboPrénom.Clear
    Frame2.Visible = False
End Sub
 

JM27

XLDnaute Barbatruc
en plus si tu regarde le post 111 , je l'avais mis sur la voie

Valeur de checkbox ou OptButton null ou"" au au lieu de false ou true

issu du post 111 de 14h23

Après une validation , les optionButton ont une valeur vide , alors qu'ils ne devrait avoir comme valeur que false ou true (pas grave)(valeur en grisée des optionButton)
 
Dernière édition:

Choco2x

XLDnaute Occasionnel
...mais comme je suis nul et en plus au boulot... 😆

Ce que je voulais dire, c'est que les valeurs des chkbox O² etc ne sont pas transposées si on les coche pour ensuite passer en VSL, sauf pour l'option"Contentions", qui reste validée dans le bon de commande même si on a finalement choisi VSL et donc fait disparaître la frame.
Je regarde çà dés que possible, mais l'aide et l'enseignement que vous m'avez apporté sont énormes, même si oui, je partais de loin !
Je me rend compte qu'on peut toujours trouver d'autres améliorations à apporter, c'est sans fin.
Alors en effet, je pense qu'on va s'arrêter là, le résultat est super l

Mille mercis à vous pour cette aide précieuse !
Bonne fin de journée à toutes et à tous !
 

Discussions similaires

Statistiques des forums

Discussions
312 214
Messages
2 086 311
Membres
103 175
dernier inscrit
abcc