Nommer les boutons d'une USF à l'initialisation de celle-ci

  • Initiateur de la discussion Initiateur de la discussion Matt51100
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Matt51100

XLDnaute Occasionnel
Bonjour le forum,

A l'appel d'une USF j'aimerai que les 44 boutons qu'elle contient soit nommés suivant des variables.

J'ai cherché un peu et j'ai écrit ceci :

Code:
Private Sub UserForm_Initialize()

Label1 = titre123

Dim i As Integer

aller = Cells(vligne, colonnePMG).Value
Nlot = Cells(vligne, colonnePMG2).Value

For i = 0 To 44 Step 1
aller = Cells(vligne + i, colonnePMG).Value
Nlot = Cells(vligne + i, colonnePMG2).Value
Controls("CommandButton" & i + 1).Caption = "PMG " & aller & " " & Nlot
Next i

End Sub

Ce qui ne marche. Apparemment c'est au niveau de la ligne contenant le "Controls". Quelqu'un peut-il m'aider ?

Merci d'avance.

A+, Matt.
 
Re : Nommer les boutons d'une USF à l'initialisation de celle-ci

Bonjour Matt, bonjour le forum,

Rajoute Me. devant Controls... (non testé)
Code:
Me.Controls("CommandButton" & i + 1).Caption = "PMG " & aller & " " & Nlot

[Édition]
Bonjour PierreJean on s'est croisé.
 
Re : Nommer les boutons d'une USF à l'initialisation de celle-ci

Bonjour Robert, pierrejean,

J'ai déjà tenté le Me, sans résultat.

J'ai cependant trouvé une solution posté par Hasco. Cependant j'aurais préféré une solution dans la userform et non en passant par un module.

A+, Matt.
 
Re : Nommer les boutons d'une USF à l'initialisation de celle-ci

Re

Le probleme n'etait pas dans la ligne Controls.... mais dans l'initialisation des variables

VB:
Private Sub UserForm_Initialize()
Label1 = titre123
Dim i As Integer
vligne = 4
colonnePMG = 2
colonnePMG2 = 4
aller = Cells(vligne, colonnePMG).Value
Nlot = Cells(vligne, colonnePMG2).Value
For i = 0 To 44 Step 1
aller = Cells(vligne + i, colonnePMG).Value
Nlot = Cells(vligne + i, colonnePMG2).Value
Controls("CommandButton" & i + 1).Caption = "PMG " & aller & " " & Nlot
Next i
End Sub
 
Re : Nommer les boutons d'une USF à l'initialisation de celle-ci

Bonjour le fil, bonjour le forum,

Ça mache si on ouvre l'UserForm en lançant la procédure PMGAC du Module8 qui définit les variables publiques.
 
Re : Nommer les boutons d'une USF à l'initialisation de celle-ci

Re,

Effectivement pierrejean, ta solution marche. Je ne comprends pas cependant, pourquoi, je dois déclarer les variables vligne, colonnePMG et colonnePMG2 dans la USF et non dans le module 8 vu qu'elles sont en public.

Merci beaucoup.

A+, Matt.
 
Re : Nommer les boutons d'une USF à l'initialisation de celle-ci

Bonjour le fil, bonjour le forum,

Matt tu fait une confusion entre la déclaration et la définition d'une variable. Une variable déclarée publique va avoir une portée au niveau de tout le projet mais si elle n'est pas definie elle nulle (pour une variable déclarée Integer par exemple).

Public li As Integer 'ne fait que déclarer la variable
Cells(li, 1).Select 'va planter car li vaut 0

Public li As Integer
li = Range("A65536").End(xlUp).Row 'définit la variable
Cells(li, 1).Select 'ne va plus planter...

Soit tu définies les variables dans la procédure PMGAC et tu lances l'UserForm à partir de cette procédure, soit comme le préconise PierreJean, tu définies les variables à l'initialisation de l'UserForm et tu te passe de la procédure.
 
Dernière édition:
Re : Nommer les boutons d'une USF à l'initialisation de celle-ci

Re,

oui, je vois bien ce que tu veux dire, je me suis mal exprimé dans mon post précédent.
Pourtant mes variables étaient définies dans PMGAC. Donc au final je ne comprends pas pourquoi cela ne marchait pas sur mon fichier d'origine.

Bon, vu que mon problème est résolu, c'est cool.

Encore merci.

A+, Matt.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

I
Réponses
14
Affichages
2 K
excalibur
E
I
Réponses
9
Affichages
1 K
I
I
Réponses
0
Affichages
9 K
IFFIC
I
I
Réponses
24
Affichages
5 K
IFFIC
I
Retour