erreur de compilation incongru pour moi

  • Initiateur de la discussion Initiateur de la discussion Garçon à problèmes
  • 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 !

G

Garçon à problèmes

Guest
bonjour,
voici mon code que j'ai créé glanant dans ce forum et autres tutoriaux pas mal d'infos.

Dim bouton() As New Classe1

Private Sub CommandButton1_Click()
Unload Me
End Sub


=> qui va donc faire disparaitre le Userform dont le code associé est ci-dessous !

Private Sub UserForm_Activate()
Dim I As Integer, derlign As Integer
ReDim Preserve bouton(1 To Worksheets.Count)
For I = 1 To Worksheets.Count
If Left(Worksheets(I).Name, 5) = 'Ligne' Then
If I mon Userform s'appelle Menu et ce code me permet donc de récupérer le nom des feuilles du classeur dont les premiers caractères sont 'Lignes' ... etc ... et cré les boutons qui correspondent à ces feuilles en leurs associant l'évènement click pour rediriger vers la feuille en question.

j'ai également un 1er userform dont le nom est simplement userform1.


Tout fonctionne parfaitement sur un PC avec excel XP et le code Private Sub Userform_Activate()!

je copie le fichier excel sur ma clé USB et je ramène à la maison ou j'ai également Excel XP.
J'ouvre le fichier et voilà le résultat : 'Erreur de compilation : Projet ou bibliothèque introuvable. ... le code apparait Private Sub Userform_Activate() est en jaune et on m'indique que la ligne :
Set boutoncontrol = Menu.Controls.Add('Forms.CommandButton.1', 'bouton' & I) avec le 1er 'boutoncontrol' surligné avec donc ce message d'erreur !

je me suis dis je remplace Private Sub Userform_Activate () par Private Sub Menu_Activate() puisque mon Userform s'appelle 'Menu' ... et là ..... plus d'erreur de compilation mais par contre le programme ne récupère pas les infos et ne génère pas les boutons !!!


Qui a une idée !?


Merci et merci encore par avance
 
pardon voici le code complet du userform


Private Sub UserForm_Activate()

Dim I As Integer, derlign As Integer
ReDim Preserve bouton(1 To Worksheets.Count)
For I = 1 To Worksheets.Count
If Left(Worksheets(I).Name, 5) = 'Ligne' Then
If I < 13 Then


Set boutoncontrol = Menu.Controls.Add('Forms.CommandButton.1', 'bouton' & I)
boutoncontrol.Left = 35
boutoncontrol.Top = 25 * I
boutoncontrol.Width = 85
boutoncontrol.Height = 20
boutoncontrol.Name = Worksheets(I).Name
boutoncontrol.Caption = boutoncontrol.Name
boutoncontrol.BackColor = &HC00000
boutoncontrol.ForeColor = &H8000000E
Set bouton(I).boutons = boutoncontrol

Else
Set boutoncontrol = Menu.Controls.Add('Forms.CommandButton.1', 'bouton' & I)
boutoncontrol.Left = 150
boutoncontrol.Top = 25 * (I - 12)
boutoncontrol.Width = 85
boutoncontrol.Height = 20
boutoncontrol.Name = Worksheets(I).Name
boutoncontrol.Caption = boutoncontrol.Name
boutoncontrol.BackColor = &HC00000
boutoncontrol.ForeColor = &H8000000E
Set bouton(I).boutons = boutoncontrol
End If
End If

Next I
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 affichage userform
Réponses
4
Affichages
364
Réponses
4
Affichages
231
Réponses
10
Affichages
799
Retour