Salut
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Option Explicit Private Function VerifNbr() As Boolean Dim T As Integer, U As Integer For T = 0 To CheckJours.Count - 1 If CheckJours(T).Value = 1 Then U = U + 1 Next T If U = 3 Then VerifNbr = True End Function Private Sub Command1_Click() If VerifNbr Then MsgBox "juste trois" Else MsgBox "choisissez exactement trois" End If End Sub
Tu veux dire au niveau de l'exécution et pas au niveau de la compilation, parce qu'à la compilation l'erreur serait : Erreur de compilation : Procédure Sub ou Function non définie en pointant sur CheckJours.J'ai utilisé ce code mais au niveau de la compilation ça signale ceci:
Erreur d'exécution: un objet est requis
Ceci est certes dû au code proposé par ProgElecT(Salut) qui n'a pas été modifié pour l'adapter à ton projet.
CheckJours (de 0 à 6) est un groupe de contrôles CheckBox dont l'indice du premier est 0(zéro). Il faut modifier le code en conséquence.
Salut
l_autodidacte
Envoyé par l_autodidacte
Quand on met juste une image sans un debut de code......
Tout juste, les boules de cristal se font rares de nos jours
Une suggestion même si condems ne fait pas encore signe de vie : je remplacerais Command1_Click par :Ainsi, on n'a plus besoin d'appuyer sur ce bouton, le résultat est imminent pendant la coche des CheckBox.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Private Sub CheckJours_Click(Index As Integer) Dim iCount% For I = 0 To CheckJours.Count - 1 If CheckJours(I).Value = vbChecked Then iCount = iCount + 1 If iCount > 3 Then CheckJours(Index).Value = vbUnchecked MsgBox "On ne peux choisir que trois au plus" End If End If Next I End Sub
Et pour le libellé de chaque case à cocher, je mettrais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Private Sub Form_Load() Dim I% For I = 0 To CheckJours.Count - 1 CheckJours(I).Caption = WeekdayName(I + 1, True) Next I End Sub
Bonjour!
l_autodidacte, vous me disiez de remplacer Command_Click() par le code que vous m'avez proposé, ce code sera-t-il saisi dans l'éditeur de form1 ? Et vous me parlez aussi des libellés de chaque case ? Merci
Toujours ça ne marche pas
Avec cet exemple ci-dessous on ne peux que cocher trois.
Mais plus de 600 lignes
je ne suis tellement pas sûre de ça, mais SVP jeter un œil la dessus
Merci
Exemple
Vb6.0-TroisJours.rar
et pour cause : tous les CheckBox doivent avoir la même propriété Name (ici CheckJours)puis indexés de 0 à 6. J'ai fait les modifications et je te renvoie Form2Toujours ça ne marche pas
Encore un petit Up pour Form2 : Le bouton Valider n'a plus raison d'être(on doit le supprimer).
L'utilisation d'un groupe de contrôles t'épargne la saisie d'une quantité importante de code.
Par exemple dans Form1, il y a 667 lignes(ce qui représenterait un programme complet) qui peuvent être réduites à 40(avec les sauts de lignes) comme dans Form2 ci-joint.
Le bouton Annuler (Command2) n'est actif que si au moins une case est cochée.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager