Une procédure Sub pour plusieurs UserForm avec VBA et excel 2000
beaujack
Messages postés3Date d'inscriptiondimanche 11 mai 2003StatutMembreDernière intervention 3 décembre 2008
-
3 déc. 2008 à 12:22
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
3 déc. 2008 à 16:38
Bonjour,
Programme avec VBA et Excel 2000
Comment faire pour exécuter la même procédure Sub pour plusieurs UserForm. Je m'explique simplement :
Quand je clique sur le Bouton1 je dois ouvrir le Userform1,
Quand je clique sur le Bouton2 je dois ouvrir le Userform2....et cela jusqu'à 5 UserForm.
Je pensais faire comme ci-dessous
Private Sub CommandButton1_Click()
Call Procédure_A ("Userform1")
End Sub
Private Sub CommandButton2_Click()
Call Procédure_A ("Userform2")
End Sub
Sub Procédure_A (UserForm1 ou UserForm2 ......ou UserForm5)
With UserForm1 ou UserForm2 ......ou UserForm5
.StartUpPosition = 3
.Width = Application.Width
.Height = Application.Height
.Left = 0
.Top = 0
End With
End Sub
Je n'ai rien trouvé sur les forums concernant le passage d'un Userform comme paramètre à une procédure Sub
beaujack
Messages postés3Date d'inscriptiondimanche 11 mai 2003StatutMembreDernière intervention 3 décembre 2008 3 déc. 2008 à 15:53
Merci PCPT d'avoir répondu aussi vite mais ça ne marche pas pourquoi ?.....
Voila ce que j'ai fait en petit programme pour test qui a 3 UserForm
Rappel : je suis avec Windows XP Pro et Excel 2000
A partir de l' UserForm3 qui a 2 boutons CommandButton1 et CommandButton2
Je veux ouvrir et mettre en pleine page l' UserForm1 avec le CommandButton1 ou UserForm2 avec le CommandButton2
Private Sub CommandButton1_Click()
Call Procédure_A (UserForm1)
End Sub
Private Sub CommandButton2_Click()
Call Procédure_A (UserForm2)
End Sub
Sub Procédure_A (ByRef oUF As UserForm)
oUF.Show
With oUF
.StartUpPosition = 3
.Width = Application.Width
.Height = Application.Height
.Left = 0
.Top = 0
End With
End Sub
Dès l'instruction oUF.Show, j'ai le message Erreur d'exécution "438"
Propriété ou méthode non gérée par cet objet.