ChekBox
Résolu
GermPeru
Messages postés
175
Statut
Membre
-
GermPeru Messages postés 175 Statut Membre -
GermPeru Messages postés 175 Statut Membre -
Bonjour a tous,
Au travers d'une chek box je souhaiterais rendre la propiete de certaines de mes txt box enabled = true.
Le detail est que mes textbox se créent automatiquement a l´initialisation de mon USF, je pense avoir un probleme avec le nom de ces derniere mais je ne vois pas lequel
Je pense qu'il y a plus simple et plsu precis...
Merci de votre aide
Au travers d'une chek box je souhaiterais rendre la propiete de certaines de mes txt box enabled = true.
Le detail est que mes textbox se créent automatiquement a l´initialisation de mon USF, je pense avoir un probleme avec le nom de ces derniere mais je ne vois pas lequel
Private Sub ChkMod_Click()
Dim Ctrl As Control
'On compte le nb de lignes
Dim NbLignes As Long
Sheets(2).Range("A1").Select
NbLignes = Range("A1", Selection.End(xlDown)).Cells.Count
For i = 2 To NbLignes
For Each Ctrl In Me.Controls
If TypeName(Ctrl) = "TxtN" & i Then
Select Case ChkMod.Value
Case True: "TxtN" & i.enabled = True
Case False: "TxtN" & i.enabled = False
End Select
End If
Next Ctrl
Next
End Sub
Je pense qu'il y a plus simple et plsu precis...
Merci de votre aide
2 réponses
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
bonsoir, tu n'expliques pas ce qui ne va pas: tu as un message d'erreur, cela ne se comporte pas quand tu espères, ...?
Bonjour,
Quand je lis ceci :
ça me défrise.
Déjà que je n'ai plus beaucoup de cheveux...
Tout simplement pourquoi pas comme ceci :
Soit :
TypeName renvoie le nom du type de contrôle. Dans ton cas, "TextBox".
Name renvoie le nom définit dans la propriété Name du contrôle. Dans ton cas "TxtN1", "TxtN2", etc...
Avant, j'arrivais jamais à finir mes phrases... mais maintenant je
Quand je lis ceci :
Select Case ChkMod.Value
Case True: Ctrl.Enabled = True
Case False: Ctrl.Enabled = False
End Select
ça me défrise.
Déjà que je n'ai plus beaucoup de cheveux...
Tout simplement pourquoi pas comme ceci :
Ctrl.Enabled = ChkMod.Value
Soit :
For Each Ctrl In Me.Controls If Ctrl.Name = "TxtN" & i Then Ctrl.Enabled = ChkMod.Value Next Ctrl
TypeName renvoie le nom du type de contrôle. Dans ton cas, "TextBox".
Name renvoie le nom définit dans la propriété Name du contrôle. Dans ton cas "TxtN1", "TxtN2", etc...
Avant, j'arrivais jamais à finir mes phrases... mais maintenant je
"TxtN" & i.enabled = True
J'ai essayé avec differentes formule sans resultat
autre chose: es-tu certain de
moi j'essaierais
Je mets le code pour ceux que ca interesse:
Private Sub ChkMod_Click() Dim Ctrl As Control 'On compte le nb de lignes Dim i As Integer Dim NbLignes As Long Sheets(2).Range("A1").Select NbLignes = Range("A1", Selection.End(xlDown)).Cells.Count For i = 2 To NbLignes For Each Ctrl In Me.Controls If Ctrl.Name = "TxtN" & i Then Select Case ChkMod.Value Case True: Ctrl.Enabled = True Case False: Ctrl.Enabled = False End Select End If Next Ctrl Next End SubEncore merci, yg_be