Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Aide sur macro

5 réponses
Avatar
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é

5 réponses

Avatar
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é
Avatar
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é" a écrit dans le message de groupe de 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é
Avatar
Joël André
Merci Daniel.C, je vais tester tout des suite.
Joël André

"Daniel.C" a écrit dans le message de news:

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é





Avatar
Joël André
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" a écrit dans le message de news:

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é" a écrit dans le message de groupe de
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é


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

"Joël André" a écrit dans le message de news:

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é