XL 2013 Bloquer un CommandButton si OptionButton pas actif

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Citronflexe

XLDnaute Junior
Bonjour à tous,


Je suis à la recherche d'aide quant au problème suivant :

Dans le fichier ci-joint, cliquer sur le CommandButton ouvre un UserForm. Dans cet UserForm, j'aimerais bloquer les CommandButtons "Poste suivant" et "Terminer" tant qu'il n'y a pas un OptionButton de sélectionné dans les Frames "Poste", "Rotation" et "Équipe".

En résumé, tant qu'un opérateur n'a pas choisi quelle équipe, quel poste et quelle rotation il occupe, il ne peut pas saisir de données.

J'ai essayé d'utiliser un Change mais rien de concluant, en plus je ne sais pas bien où l'écrire..🙁


Merci d'avance pour votre aide et votre temps.
 

Pièces jointes

Re @vgendron

Juste un petit soucis :
Quand je clique sur "Poste suivant" dans l'USF, ca désactive tous les OptionButton du Frame "Poste", pourtant ca ne désactive pas les boutons "Poste suivant" et "Terminer".

Donc à la deuxième saisie, on peut contourner l'obligation d'entrer un poste de travail.
J'ai essayé d'ajouter un "ChoixPoste = False" à la fin du code du bouton "Poste suivant", mais ça ne fait rien...

Voir fichier à jour en PJ.


Merci d'avance !


EDIT : J'ai aussi ajouté une fonction pour activer la feuille "4-9-2018" si elle existe déjà, ou de créer une nouvelle feuille avec la date si elle n'existe pas, pour éviter les messages d'erreur...

EDIT de l'EDIT : En fait il suffisait de rappeller "afficheboutton"... ça marche super bien !
Merci beaucoup 🙂
 

Pièces jointes

Dernière édition:
voir ton code corrigé ici

VB:
Private Sub CommandButton2_Click()
Dim ligne, colonne As Integer

Call Module1.Macro1
For Each OB In Me.Controls 'désactive tous les controls qui sont des OptionButton
        If OB.Name Like "*OptionButton*" Then
            OB.Value = False
        End If
       
        If OB.Name Like "*TextBox*" Then 'vide tous les controls textBox
            OB.Value = ""
        End If
       
Next

'OptionButton1.Value = False
'OptionButton2.Value = False
'OptionButton3.Value = False
'OptionButton4.Value = False
'OptionButton5.Value = False
'OptionButton6.Value = False

'TextBox2.Text = ""
'TextBox3.Text = ""
'TextBox4.Text = ""
'TextBox5.Text = ""
'TextBox6.Text = ""
'TextBox7.Text = ""
'TextBox8.Text = ""
'TextBox9.Text = ""
'TextBox10.Text = ""
'TextBox11.Text = ""
'TextBox12.Text = ""
'TextBox13.Text = ""

'réinit des 3 booleans
ChoixPoste = False 
ChoixEquipe = False
ChoixRotation = False
'Appel du code pour afficher ou pas les boutons (ca manquait)
afficheBoutton

End Sub
 
Re,

Quand je copie ton code, ca me met le bloc
Code:
        If OB.Name Like "*OptionButton*" Then
            OB.Value = False
        End If
       
        If OB.Name Like "*TextBox*" Then 'vide tous les controls textBox
            OB.Value = ""
        End If

en rouge dans VBA, et lors de l'activation du bouton, ça me renvoie une "erreur de syntaxe".

Je suis perdu 😕
 
Sinon je peux laisser mes

VB:
'OptionButton1.Value = False
'OptionButton2.Value = False
'OptionButton3.Value = False
'OptionButton4.Value = False
'OptionButton5.Value = False
'OptionButton6.Value = False

'TextBox2.Text = ""
'TextBox3.Text = ""
'TextBox4.Text = ""
'TextBox5.Text = ""
'TextBox6.Text = ""
'TextBox7.Text = ""
'TextBox8.Text = ""
'TextBox9.Text = ""
'TextBox10.Text = ""
'TextBox11.Text = ""
'TextBox12.Text = ""
'TextBox13.Text = ""

C'est moche et ca fait pas pro, mais bon... personne ira fouiller
 
et sinon, il va sans doute falloir revoir l'utilisation du bouton "Terminer"
si il est activé et désactivé en meme temps que "poste suivant", tu ne pourra jamais sortir de ton formulaire (à part la croix)

En fait l'idée c'est que les opé rentrent le poste 1, puis 2... puis au dernier plutôt que cliquer sur "poste suivant", ils cliquent sur "terminer", et ce bouton ferme le formulaire.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour