Utiliser une boucle For pour parcourir toutes mes cases à cocher
loots007
Messages postés10Date d'inscriptionjeudi 8 juillet 2004StatutMembreDernière intervention18 mars 2005
-
8 juil. 2004 à 20:59
loots007
Messages postés10Date d'inscriptionjeudi 8 juillet 2004StatutMembreDernière intervention18 mars 2005
-
13 juil. 2004 à 12:54
Bonjour,
Je débute en VBA et tous simplement en programmation. Je cherche à faire un truc en VBA dans le cadre d'une application access.
J'ai un formulaire avec environ 200 cases à cocher et je cherche à automatiser une partie du processus d'enregistrement des données grace à une boucles For.
Voici à quoi j'aurai voulu que ça ressemble (il s'agit d'un exemple de tous ce que j'ai essayé pour le moment, je passe tous les autres exemples ... ):
(Toutes mes cases à cocher commencent par "MC" suivient par leur numéro d'ordre ex: MC1, MC2, ... )
For i = 1 To 200
i = i + 1
Case_Des = ["MC" & i ]
If Case_Des.Value = True then
...
J'imagine que vous avez tous de suite vu qu'il y avait des problèmes dans ce que je viens d'écrire, mais je voulais essentiellement montrer le principe.
cs_PhilippeE
Messages postés437Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention10 août 20102 9 juil. 2004 à 10:32
2 pistes possibles pour que tu puisses te débrouiller
1/
Tout d'abord il te faut préfixer correctement et de manière distincte tes cases à cocher.
Après tu fais un For Each oControle in Form(..).Controls
et tu testes que tu es sur un de tes contrôles.
2/
Tu peux aussi nommer tous tes contrôles de cette façon
opt1, opt2, ... optn
For lcpt=1 to n
Me.Controls("opt" & lcpt). .....
next lcpt
loots007
Messages postés10Date d'inscriptionjeudi 8 juillet 2004StatutMembreDernière intervention18 mars 2005 13 juil. 2004 à 12:54
Voilà, ça fonctionne. La solution :
For NumberCase = 0 To 5
If Me.Controls("Cocher" & NumberCase) = False Then
Resume Next
Else
MsgBox "Cocher" & NumberCase
End If
Next NumberCase
PS : il y'a sur le formulaire de test 3 cases à cocher qui se nomment respectivement "Cocher0", "Cocher2" et "Cocher4". J'avais essayé au début au début de mettre mon action quand la valeur de ma case prenait la valeur "VRAI", mais mon action se répétait même pour les cases à cocher qui n'existaient pas ???
Enfin, ça fonctionne, encore merci !