Aide sur macro

Le
Joël André
Bonjour,

XPSp3, Excel 2000 toutes mises à jour effectuées

Dans un userform contenant une multitude de checkbox et textbox en relation,
j'aimerai simplifier la boucle des checkbox en éliminant la fonction Case
XX, mais je plante lamentablement.



Actuellement la macro contient :



Dim CheckBoxEnCours As Integer, PointeurCase As Integer

.

.

CheckBoxEnCours = Range("I4")

.

.

Load ChoixFeuilleTravaux

ChoixFeuilleTravaux.NombreBulletinsExistants.Caption = CheckBoxEnCours

For PointeurCase = 1 To CheckBoxEnCours

Select Case PointeurCase

Case 1

ChoixFeuilleTravaux.CheckBox1.Visible = True

Case 2

ChoixFeuilleTravaux.CheckBox2.Visible = True

Case 3

ChoixFeuilleTravaux.CheckBox3.Visible = True

.

.

End Select

Next PointeurCase

.

.

ChoixFeuilleTravaux.Show

TesteEnCours = ""

If ChoixFeuilleTravaux.CheckBox1 Then TesteEnCours = TesteEnCours & "01"

If ChoixFeuilleTravaux.CheckBox2 Then TesteEnCours = TesteEnCours & "02"

If ChoixFeuilleTravaux.CheckBox3 Then TesteEnCours = TesteEnCours & "03"

.

.

Unload ChoixFeuilleTravaux

.

.

J'essaie de simplifier en faisant une boucle du genre :

For PointeurCase = 1 To CheckBoxEnCours



ChoixFeuilleTravaux.CheckBox(PointeurCase).Visible = True



Next PointeurCase



Mais je n'ai que des erreurs, quelque soit la tentative de variable
d'ailleurs.



Auriez-vous une solution?



Merci pour votre précieux temps.



Joël André
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #21489292
Bonjour.

For PointeurCase = 1 To CheckBoxEnCours
ChoixFeuilleTravaux.Controls("Textbox" & PointeurCase).Visible =
True
Next

Cordialement.
Daniel

Bonjour,

XPSp3, Excel 2000 toutes mises à jour effectuées

Dans un userform contenant une multitude de checkbox et textbox en relation,
j'aimerai simplifier la boucle des checkbox en éliminant la fonction Case XX,
mais je plante lamentablement.



Actuellement la macro contient :



Dim CheckBoxEnCours As Integer, PointeurCase As Integer

.

.

CheckBoxEnCours = Range("I4")

.

.

Load ChoixFeuilleTravaux

ChoixFeuilleTravaux.NombreBulletinsExistants.Caption = CheckBoxEnCours

For PointeurCase = 1 To CheckBoxEnCours

Select Case PointeurCase

Case 1

ChoixFeuilleTravaux.CheckBox1.Visible = True

Case 2

ChoixFeuilleTravaux.CheckBox2.Visible = True

Case 3

ChoixFeuilleTravaux.CheckBox3.Visible = True

.

.

End Select

Next PointeurCase

.

.

ChoixFeuilleTravaux.Show

TesteEnCours = ""

If ChoixFeuilleTravaux.CheckBox1 Then TesteEnCours = TesteEnCours & "01"

If ChoixFeuilleTravaux.CheckBox2 Then TesteEnCours = TesteEnCours & "02"

If ChoixFeuilleTravaux.CheckBox3 Then TesteEnCours = TesteEnCours & "03"

.

.

Unload ChoixFeuilleTravaux

.

.

J'essaie de simplifier en faisant une boucle du genre :

For PointeurCase = 1 To CheckBoxEnCours



ChoixFeuilleTravaux.CheckBox(PointeurCase).Visible = True



Next PointeurCase



Mais je n'ai que des erreurs, quelque soit la tentative de variable
d'ailleurs.



Auriez-vous une solution?



Merci pour votre précieux temps.



Joël André
michdenis
Le #21489272
Bonjour,

Tu pourrais quand même soigner la présentation de ta question !

Ce que tu cherches à faire... n'est pas évident !

Quand tu veux boucler sur un type de contrôle, tu peux utiliser
ce type de syntaxe...

'------------------------------
With ChoixFeuilleTravaux
For PointeurCase = 1 To CheckBoxEnCours
.Controls("CheckBox" & PointeurCase).Visible = True
Next
End With
'------------------------------




"Joël André"
Bonjour,

XPSp3, Excel 2000 toutes mises à jour effectuées

Dans un userform contenant une multitude de checkbox et textbox en relation,
j'aimerai simplifier la boucle des checkbox en éliminant la fonction Case
XX, mais je plante lamentablement.



Actuellement la macro contient :



Dim CheckBoxEnCours As Integer, PointeurCase As Integer

.

.

CheckBoxEnCours = Range("I4")

.

.

Load ChoixFeuilleTravaux

ChoixFeuilleTravaux.NombreBulletinsExistants.Caption = CheckBoxEnCours

For PointeurCase = 1 To CheckBoxEnCours

Select Case PointeurCase

Case 1

ChoixFeuilleTravaux.CheckBox1.Visible = True

Case 2

ChoixFeuilleTravaux.CheckBox2.Visible = True

Case 3

ChoixFeuilleTravaux.CheckBox3.Visible = True

.

.

End Select

Next PointeurCase

.

.

ChoixFeuilleTravaux.Show

TesteEnCours = ""

If ChoixFeuilleTravaux.CheckBox1 Then TesteEnCours = TesteEnCours & "01"

If ChoixFeuilleTravaux.CheckBox2 Then TesteEnCours = TesteEnCours & "02"

If ChoixFeuilleTravaux.CheckBox3 Then TesteEnCours = TesteEnCours & "03"

.

.

Unload ChoixFeuilleTravaux

.

.

J'essaie de simplifier en faisant une boucle du genre :

For PointeurCase = 1 To CheckBoxEnCours



ChoixFeuilleTravaux.CheckBox(PointeurCase).Visible = True



Next PointeurCase



Mais je n'ai que des erreurs, quelque soit la tentative de variable
d'ailleurs.



Auriez-vous une solution?



Merci pour votre précieux temps.



Joël André
Joël André
Le #21489852
Merci Daniel.C, je vais tester tout des suite.
Joël André

"Daniel.C"
Bonjour.

For PointeurCase = 1 To CheckBoxEnCours
ChoixFeuilleTravaux.Controls("Textbox" & PointeurCase).Visible = True
Next

Cordialement.
Daniel

Bonjour,

XPSp3, Excel 2000 toutes mises à jour effectuées

Dans un userform contenant une multitude de checkbox et textbox en
relation, j'aimerai simplifier la boucle des checkbox en éliminant la
fonction Case XX, mais je plante lamentablement.



Actuellement la macro contient :



Dim CheckBoxEnCours As Integer, PointeurCase As Integer

.

.

CheckBoxEnCours = Range("I4")

.

.

Load ChoixFeuilleTravaux

ChoixFeuilleTravaux.NombreBulletinsExistants.Caption = CheckBoxEnCours

For PointeurCase = 1 To CheckBoxEnCours

Select Case PointeurCase

Case 1

ChoixFeuilleTravaux.CheckBox1.Visible = True

Case 2

ChoixFeuilleTravaux.CheckBox2.Visible = True

Case 3

ChoixFeuilleTravaux.CheckBox3.Visible = True

.

.

End Select

Next PointeurCase

.

.

ChoixFeuilleTravaux.Show

TesteEnCours = ""

If ChoixFeuilleTravaux.CheckBox1 Then TesteEnCours = TesteEnCours & "01"

If ChoixFeuilleTravaux.CheckBox2 Then TesteEnCours = TesteEnCours & "02"

If ChoixFeuilleTravaux.CheckBox3 Then TesteEnCours = TesteEnCours & "03"

.

.

Unload ChoixFeuilleTravaux

.

.

J'essaie de simplifier en faisant une boucle du genre :

For PointeurCase = 1 To CheckBoxEnCours



ChoixFeuilleTravaux.CheckBox(PointeurCase).Visible = True



Next PointeurCase



Mais je n'ai que des erreurs, quelque soit la tentative de variable
d'ailleurs.



Auriez-vous une solution?



Merci pour votre précieux temps.



Joël André





Joël André
Le #21489842
Merci michdenis, je vais tester la procédure.
Concernant le mise en page, j'avais préalablement rédigé mon message sous
word et ensuite fait un copier coller sur la messagerie.
Je ne m'attendai pas à ce qu'il prenne une forme aussi distendue, j'en suis
désolé.
Joël André

"michdenis"
Bonjour,

Tu pourrais quand même soigner la présentation de ta question !

Ce que tu cherches à faire... n'est pas évident !

Quand tu veux boucler sur un type de contrôle, tu peux utiliser
ce type de syntaxe...

'------------------------------
With ChoixFeuilleTravaux
For PointeurCase = 1 To CheckBoxEnCours
.Controls("CheckBox" & PointeurCase).Visible = True
Next
End With
'------------------------------




"Joël André" discussion :

Bonjour,

XPSp3, Excel 2000 toutes mises à jour effectuées

Dans un userform contenant une multitude de checkbox et textbox en
relation,
j'aimerai simplifier la boucle des checkbox en éliminant la fonction Case
XX, mais je plante lamentablement.



Actuellement la macro contient :



Dim CheckBoxEnCours As Integer, PointeurCase As Integer

.

.

CheckBoxEnCours = Range("I4")

.

.

Load ChoixFeuilleTravaux

ChoixFeuilleTravaux.NombreBulletinsExistants.Caption = CheckBoxEnCours

For PointeurCase = 1 To CheckBoxEnCours

Select Case PointeurCase

Case 1

ChoixFeuilleTravaux.CheckBox1.Visible = True

Case 2

ChoixFeuilleTravaux.CheckBox2.Visible = True

Case 3

ChoixFeuilleTravaux.CheckBox3.Visible = True

.

.

End Select

Next PointeurCase

.

.

ChoixFeuilleTravaux.Show

TesteEnCours = ""

If ChoixFeuilleTravaux.CheckBox1 Then TesteEnCours = TesteEnCours & "01"

If ChoixFeuilleTravaux.CheckBox2 Then TesteEnCours = TesteEnCours & "02"

If ChoixFeuilleTravaux.CheckBox3 Then TesteEnCours = TesteEnCours & "03"

.

.

Unload ChoixFeuilleTravaux

.

.

J'essaie de simplifier en faisant une boucle du genre :

For PointeurCase = 1 To CheckBoxEnCours



ChoixFeuilleTravaux.CheckBox(PointeurCase).Visible = True



Next PointeurCase



Mais je n'ai que des erreurs, quelque soit la tentative de variable
d'ailleurs.



Auriez-vous une solution?



Merci pour votre précieux temps.



Joël André


Joël André
Le #21492932
Un grand merci à Daniel.C et à michdenis.
Tout fonctionne à merveille.
Corfialement
Joël André

"Joël André"
Bonjour,

XPSp3, Excel 2000 toutes mises à jour effectuées

Dans un userform contenant une multitude de checkbox et textbox en
relation, j'aimerai simplifier la boucle des checkbox en éliminant la
fonction Case XX, mais je plante lamentablement.



Actuellement la macro contient :



Dim CheckBoxEnCours As Integer, PointeurCase As Integer

.

.

CheckBoxEnCours = Range("I4")

.

.

Load ChoixFeuilleTravaux

ChoixFeuilleTravaux.NombreBulletinsExistants.Caption = CheckBoxEnCours

For PointeurCase = 1 To CheckBoxEnCours

Select Case PointeurCase

Case 1

ChoixFeuilleTravaux.CheckBox1.Visible = True

Case 2

ChoixFeuilleTravaux.CheckBox2.Visible = True

Case 3

ChoixFeuilleTravaux.CheckBox3.Visible = True

.

.

End Select

Next PointeurCase

.

.

ChoixFeuilleTravaux.Show

TesteEnCours = ""

If ChoixFeuilleTravaux.CheckBox1 Then TesteEnCours = TesteEnCours & "01"

If ChoixFeuilleTravaux.CheckBox2 Then TesteEnCours = TesteEnCours & "02"

If ChoixFeuilleTravaux.CheckBox3 Then TesteEnCours = TesteEnCours & "03"

.

.

Unload ChoixFeuilleTravaux

.

.

J'essaie de simplifier en faisant une boucle du genre :

For PointeurCase = 1 To CheckBoxEnCours



ChoixFeuilleTravaux.CheckBox(PointeurCase).Visible = True



Next PointeurCase



Mais je n'ai que des erreurs, quelque soit la tentative de variable
d'ailleurs.



Auriez-vous une solution?



Merci pour votre précieux temps.



Joël André



Publicité
Poster une réponse
Anonyme