Bonjour...
Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces
checkbox.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Mike
Bonjour
Il y a certainement plus simple et plus court mais au moins ça marche:
Public nbre As Integer
Private Sub CheckBox1_Click() If CheckBox1.Value = True Then nbre = nbre + 1 Else End If If CheckBox1.Value = False Then nbre = nbre - 1 Else End If TextBox1.Value = nbre End Sub
et on répète pour tout les checkboxs (ça là que ça devient lourd), le résultat (nombre de cases cochées donc ayant la valeur TRUE) s'inscrit en temps réel dans la Textbox
Bon Courage Ciao
-----Message d'origine----- Bonjour... Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces
checkbox.
Dans le genre: label1=sum(checkbox.values)
merci d'avance, Claudy
.
Bonjour
Il y a certainement plus simple et plus court mais au
moins ça marche:
Public nbre As Integer
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
nbre = nbre + 1
Else
End If
If CheckBox1.Value = False Then
nbre = nbre - 1
Else
End If
TextBox1.Value = nbre
End Sub
et on répète pour tout les checkboxs (ça là que ça devient
lourd), le résultat (nombre de cases cochées donc ayant la
valeur TRUE) s'inscrit en temps réel dans la Textbox
Bon Courage
Ciao
-----Message d'origine-----
Bonjour...
Un userform, avec des checkbox(1 à 22) et un label, je
n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce
label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on
coche ou décoche ces
Il y a certainement plus simple et plus court mais au moins ça marche:
Public nbre As Integer
Private Sub CheckBox1_Click() If CheckBox1.Value = True Then nbre = nbre + 1 Else End If If CheckBox1.Value = False Then nbre = nbre - 1 Else End If TextBox1.Value = nbre End Sub
et on répète pour tout les checkboxs (ça là que ça devient lourd), le résultat (nombre de cases cochées donc ayant la valeur TRUE) s'inscrit en temps réel dans la Textbox
Bon Courage Ciao
-----Message d'origine----- Bonjour... Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces
checkbox.
Dans le genre: label1=sum(checkbox.values)
merci d'avance, Claudy
.
claudy
Bonsoir Mike... comme tu dis c'est un peu lourd pour 22 checkbox merci quand même,
N'y a t il pas plus léger ? A+ Claudy
"Mike" a écrit dans le message de news:2a3301c37ae4$79a3dca0$ Bonjour
Il y a certainement plus simple et plus court mais au moins ça marche:
Public nbre As Integer
Private Sub CheckBox1_Click() If CheckBox1.Value = True Then nbre = nbre + 1 Else End If If CheckBox1.Value = False Then nbre = nbre - 1 Else End If TextBox1.Value = nbre End Sub
et on répète pour tout les checkboxs (ça là que ça devient lourd), le résultat (nombre de cases cochées donc ayant la valeur TRUE) s'inscrit en temps réel dans la Textbox
Bon Courage Ciao
-----Message d'origine----- Bonjour... Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces
checkbox.
Dans le genre: label1=sum(checkbox.values)
merci d'avance, Claudy
.
Bonsoir Mike...
comme tu dis c'est un peu lourd pour 22 checkbox
merci quand même,
N'y a t il pas plus léger ?
A+
Claudy
"Mike" <croix32@aol.com> a écrit dans le message de
news:2a3301c37ae4$79a3dca0$a501280a@phx.gbl...
Bonjour
Il y a certainement plus simple et plus court mais au
moins ça marche:
Public nbre As Integer
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
nbre = nbre + 1
Else
End If
If CheckBox1.Value = False Then
nbre = nbre - 1
Else
End If
TextBox1.Value = nbre
End Sub
et on répète pour tout les checkboxs (ça là que ça devient
lourd), le résultat (nombre de cases cochées donc ayant la
valeur TRUE) s'inscrit en temps réel dans la Textbox
Bon Courage
Ciao
-----Message d'origine-----
Bonjour...
Un userform, avec des checkbox(1 à 22) et un label, je
n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce
label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on
coche ou décoche ces
Bonsoir Mike... comme tu dis c'est un peu lourd pour 22 checkbox merci quand même,
N'y a t il pas plus léger ? A+ Claudy
"Mike" a écrit dans le message de news:2a3301c37ae4$79a3dca0$ Bonjour
Il y a certainement plus simple et plus court mais au moins ça marche:
Public nbre As Integer
Private Sub CheckBox1_Click() If CheckBox1.Value = True Then nbre = nbre + 1 Else End If If CheckBox1.Value = False Then nbre = nbre - 1 Else End If TextBox1.Value = nbre End Sub
et on répète pour tout les checkboxs (ça là que ça devient lourd), le résultat (nombre de cases cochées donc ayant la valeur TRUE) s'inscrit en temps réel dans la Textbox
Bon Courage Ciao
-----Message d'origine----- Bonjour... Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces
checkbox.
Dans le genre: label1=sum(checkbox.values)
merci d'avance, Claudy
.
Hervé
Salut Claudy, Il te faut utiliser un module de classe afin d'avoir un évennement commun. Attention au nom de la form dans le code elle s'appelle UserForm1, adapte. --------------------------------------------------- A mettre dans le module de classe et le nommer ClsCheckBox (propriété Name en bas à gauche) :
Public WithEvents GroupeChk As MSForms.CheckBox
Private Sub GroupeChk_Click() Dim Ctrl As Control Dim I As Integer For Each Ctrl In UserForm1.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then I = I + 1 End If End If Next Ctrl UserForm1.Label1.Caption = I Set Ctrl = Nothing End Sub
--------------------------------------------------- A mettre dans le module de ta form :
Dim Chk() As New ClsCheckBox 'A mettre en tête de module
Private Sub UserForm_Initialize() Dim Ctrl As Control Dim I As Integer For Each Ctrl In Me.Controls If TypeName(Ctrl) = "CheckBox" Then I = I + 1 ReDim Preserve Chk(1 To I) Set Chk(I).GroupeChk = Ctrl End If Next Ctrl Set Ctrl = Nothing End Sub
Hervé.
"claudy" a écrit dans le message news: 3f649cc9$0$24171$
Bonjour... Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à trouver le code qui me permettrait d'afficher dans ce label le nombre de chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces checkbox.
Dans le genre: label1=sum(checkbox.values)
merci d'avance, Claudy
Salut Claudy,
Il te faut utiliser un module de classe afin d'avoir un évennement commun.
Attention au nom de la form dans le code elle s'appelle UserForm1, adapte.
---------------------------------------------------
A mettre dans le module de classe et le nommer ClsCheckBox (propriété Name
en bas à gauche) :
Public WithEvents GroupeChk As MSForms.CheckBox
Private Sub GroupeChk_Click()
Dim Ctrl As Control
Dim I As Integer
For Each Ctrl In UserForm1.Controls
If TypeName(Ctrl) = "CheckBox" Then
If Ctrl.Value = True Then
I = I + 1
End If
End If
Next Ctrl
UserForm1.Label1.Caption = I
Set Ctrl = Nothing
End Sub
---------------------------------------------------
A mettre dans le module de ta form :
Dim Chk() As New ClsCheckBox 'A mettre en tête de module
Private Sub UserForm_Initialize()
Dim Ctrl As Control
Dim I As Integer
For Each Ctrl In Me.Controls
If TypeName(Ctrl) = "CheckBox" Then
I = I + 1
ReDim Preserve Chk(1 To I)
Set Chk(I).GroupeChk = Ctrl
End If
Next Ctrl
Set Ctrl = Nothing
End Sub
Hervé.
"claudy" <weets.claudy@Skynet.be.no_spam> a écrit dans le message news:
3f649cc9$0$24171$ba620e4c@reader0.news.skynet.be...
Bonjour...
Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces
checkbox.
Salut Claudy, Il te faut utiliser un module de classe afin d'avoir un évennement commun. Attention au nom de la form dans le code elle s'appelle UserForm1, adapte. --------------------------------------------------- A mettre dans le module de classe et le nommer ClsCheckBox (propriété Name en bas à gauche) :
Public WithEvents GroupeChk As MSForms.CheckBox
Private Sub GroupeChk_Click() Dim Ctrl As Control Dim I As Integer For Each Ctrl In UserForm1.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then I = I + 1 End If End If Next Ctrl UserForm1.Label1.Caption = I Set Ctrl = Nothing End Sub
--------------------------------------------------- A mettre dans le module de ta form :
Dim Chk() As New ClsCheckBox 'A mettre en tête de module
Private Sub UserForm_Initialize() Dim Ctrl As Control Dim I As Integer For Each Ctrl In Me.Controls If TypeName(Ctrl) = "CheckBox" Then I = I + 1 ReDim Preserve Chk(1 To I) Set Chk(I).GroupeChk = Ctrl End If Next Ctrl Set Ctrl = Nothing End Sub
Hervé.
"claudy" a écrit dans le message news: 3f649cc9$0$24171$
Bonjour... Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à trouver le code qui me permettrait d'afficher dans ce label le nombre de chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces checkbox.
Dans le genre: label1=sum(checkbox.values)
merci d'avance, Claudy
claudy
Super...ça marche... en bidouillant un peu: C'était la première fois que je manipulais un module de classe! Pour renommer le module de classe, il n'acceptait pas "ClsCheckBox", et j'ai utilisé un autre nom, en adaptant! Quelle est la différence entre un module de classe et un module normal? Avez vous une adresse de site sur le sujet, avec des exemples? Merci beaucoup, Claudy. "Hervé" a écrit dans le message de news:
Salut Claudy, Il te faut utiliser un module de classe afin d'avoir un évennement commun. Attention au nom de la form dans le code elle s'appelle UserForm1, adapte. --------------------------------------------------- A mettre dans le module de classe et le nommer ClsCheckBox (propriété Name en bas à gauche) :
Public WithEvents GroupeChk As MSForms.CheckBox
Private Sub GroupeChk_Click() Dim Ctrl As Control Dim I As Integer For Each Ctrl In UserForm1.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then I = I + 1 End If End If Next Ctrl UserForm1.Label1.Caption = I Set Ctrl = Nothing End Sub
--------------------------------------------------- A mettre dans le module de ta form :
Dim Chk() As New ClsCheckBox 'A mettre en tête de module
Private Sub UserForm_Initialize() Dim Ctrl As Control Dim I As Integer For Each Ctrl In Me.Controls If TypeName(Ctrl) = "CheckBox" Then I = I + 1 ReDim Preserve Chk(1 To I) Set Chk(I).GroupeChk = Ctrl End If Next Ctrl Set Ctrl = Nothing End Sub
Hervé.
"claudy" a écrit dans le message news: 3f649cc9$0$24171$
Bonjour... Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à trouver le code qui me permettrait d'afficher dans ce label le nombre de chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces
checkbox.
Dans le genre: label1=sum(checkbox.values)
merci d'avance, Claudy
Super...ça marche...
en bidouillant un peu:
C'était la première fois que je manipulais un module de classe!
Pour renommer le module de classe, il n'acceptait pas "ClsCheckBox", et j'ai
utilisé un autre nom, en adaptant!
Quelle est la différence entre un module de classe et un module normal?
Avez vous une adresse de site sur le sujet, avec des exemples?
Merci beaucoup,
Claudy.
"Hervé" <hmsilve@wanadoo.fr> a écrit dans le message de
news:u2NZY0ueDHA.2576@TK2MSFTNGP11.phx.gbl...
Salut Claudy,
Il te faut utiliser un module de classe afin d'avoir un évennement commun.
Attention au nom de la form dans le code elle s'appelle UserForm1, adapte.
---------------------------------------------------
A mettre dans le module de classe et le nommer ClsCheckBox (propriété Name
en bas à gauche) :
Public WithEvents GroupeChk As MSForms.CheckBox
Private Sub GroupeChk_Click()
Dim Ctrl As Control
Dim I As Integer
For Each Ctrl In UserForm1.Controls
If TypeName(Ctrl) = "CheckBox" Then
If Ctrl.Value = True Then
I = I + 1
End If
End If
Next Ctrl
UserForm1.Label1.Caption = I
Set Ctrl = Nothing
End Sub
---------------------------------------------------
A mettre dans le module de ta form :
Dim Chk() As New ClsCheckBox 'A mettre en tête de module
Private Sub UserForm_Initialize()
Dim Ctrl As Control
Dim I As Integer
For Each Ctrl In Me.Controls
If TypeName(Ctrl) = "CheckBox" Then
I = I + 1
ReDim Preserve Chk(1 To I)
Set Chk(I).GroupeChk = Ctrl
End If
Next Ctrl
Set Ctrl = Nothing
End Sub
Hervé.
"claudy" <weets.claudy@Skynet.be.no_spam> a écrit dans le message news:
3f649cc9$0$24171$ba620e4c@reader0.news.skynet.be...
Bonjour...
Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à
trouver le code qui me permettrait d'afficher dans ce label le nombre de
chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche
ces
Super...ça marche... en bidouillant un peu: C'était la première fois que je manipulais un module de classe! Pour renommer le module de classe, il n'acceptait pas "ClsCheckBox", et j'ai utilisé un autre nom, en adaptant! Quelle est la différence entre un module de classe et un module normal? Avez vous une adresse de site sur le sujet, avec des exemples? Merci beaucoup, Claudy. "Hervé" a écrit dans le message de news:
Salut Claudy, Il te faut utiliser un module de classe afin d'avoir un évennement commun. Attention au nom de la form dans le code elle s'appelle UserForm1, adapte. --------------------------------------------------- A mettre dans le module de classe et le nommer ClsCheckBox (propriété Name en bas à gauche) :
Public WithEvents GroupeChk As MSForms.CheckBox
Private Sub GroupeChk_Click() Dim Ctrl As Control Dim I As Integer For Each Ctrl In UserForm1.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then I = I + 1 End If End If Next Ctrl UserForm1.Label1.Caption = I Set Ctrl = Nothing End Sub
--------------------------------------------------- A mettre dans le module de ta form :
Dim Chk() As New ClsCheckBox 'A mettre en tête de module
Private Sub UserForm_Initialize() Dim Ctrl As Control Dim I As Integer For Each Ctrl In Me.Controls If TypeName(Ctrl) = "CheckBox" Then I = I + 1 ReDim Preserve Chk(1 To I) Set Chk(I).GroupeChk = Ctrl End If Next Ctrl Set Ctrl = Nothing End Sub
Hervé.
"claudy" a écrit dans le message news: 3f649cc9$0$24171$
Bonjour... Un userform, avec des checkbox(1 à 22) et un label, je n'arrive pas à trouver le code qui me permettrait d'afficher dans ce label le nombre de chekbox qui sont cochés, au fur et à mesure que l'on coche ou décoche ces