Lier textbox apres choix optionbutton

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 !

nicos3390

XLDnaute Junior
Bonjour,

J'ai une OptionButton1 et un OptionButton2.

lorsque je clique sur OptionButton1 , deux textbox apparaissent;
Je souhaite qu'elles soient remplies si OptionButton1 est coché.

Ces 2 Textbox sont liées, elles doivent apparaître en % et leur somme doit être égale à 100%.
si je rempli la textbox1 alors la texbox2 se calcul automatiquement et vis-versa.

Merci de votre aide

ci-joint le fichier
 

Pièces jointes

Re : Lier textbox apres choix optionbutton

Bonjour nicos3390,

Un nombre dans une des TextBox se valide quand on entre le signe % :

Code:
Private Sub TextBox18_Change()
If Right(TextBox18, 1) <> "%" Then TextBox19 = "": Exit Sub
Dim v As Single
v = Val(Replace(Replace(TextBox18, ",", "."), "%", ""))
Application.EnableEvents = False
TextBox18 = v & "%"
TextBox19 = 100 - v & "%"
Application.EnableEvents = True
End Sub

Private Sub TextBox19_Change()
If Right(TextBox19, 1) <> "%" Then TextBox18 = "": Exit Sub
Dim v As Single
v = Val(Replace(Replace(TextBox19, ",", "."), "%", ""))
Application.EnableEvents = False
TextBox19 = v & "%"
TextBox18 = 100 - v & "%"
Application.EnableEvents = True
End Sub
Fichier joint.

A+
 

Pièces jointes

Re : Lier textbox apres choix optionbutton

Re,

On peut utiliser une macro paramétrée :

Code:
Private Sub TextBox18_Change()
PourCent TextBox18, TextBox19
End Sub

Private Sub TextBox19_Change()
PourCent TextBox19, TextBox18
End Sub

Sub PourCent(T1 As MSForms.TextBox, T2 As MSForms.TextBox)
If Right(T1, 1) <> "%" Then T2 = "": Exit Sub
Dim v As Single
v = Val(Replace(Replace(T1, ",", "."), "%", ""))
Application.EnableEvents = False
T1 = v & "%"
T2 = 100 - v & "%"
Application.EnableEvents = True
End Sub
Fichier (2).

Edit : salut à toi Robert, je ne t'avais pas vu du tout.

A+
 

Pièces jointes

Dernière édition:
Re : Lier textbox apres choix optionbutton

Bonjour le fil, bonjour le forum,

Je la trouve un peu raide quand même ! Nous on en pense rien (en tout cas moi...). C'est toi qui choisit et si nos solutions te gênent pas de problème mon cher Nico, comme disait Renaud, on les remets dans nos culottes...
 
Re : Lier textbox apres choix optionbutton

Bonjour nicos3390, le fil,

ce qui me gêne dans vos solutions c'est l'obligation de saisir le %.

Une solution avec l'événement Exit :

Code:
Private Sub TextBox18_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim v!
v = Val(Replace(Replace(TextBox18, ",", "."), "%", ""))
TextBox18 = v & "%"
TextBox19 = 100 - v & "%"
End Sub

Private Sub TextBox19_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim v!
v = Val(Replace(Replace(TextBox19, ",", "."), "%", ""))
TextBox19 = v & "%"
TextBox18 = 100 - v & "%"
End Sub
Il faut sortir de la TextBox par la touche <Entrée> ou la touche de tabulation.

On peut écrire % ou non, ça n'a pas d'importance.

Fichier (3).

A+
 

Pièces jointes

- 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