1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| CreateEventProc de l'objet Module.
Dim ctl As Control
'Crée un contrôle "Groupe d'options" :
Set ctl = CreateControl("NomFormulaire", acOptionGroup, , NomPag, , 1200, 3800, 6300, 2700)
With ctl
'Définit un nom pour le contrôle
.Name = "Options"
'Déclare l'événement "Après mise à jour" du contrôle
.AfterUpdate = "[Event Procedure]"
End With
'Normalement il ne nous reste plus qu'à écrire la procédure
'événementielle avec Module.CreateEventProc
'Mais étant donné que nous avons créé un groupe d'option
'il faut maintenant créer à l'intérieur,
'un contrôle pour chaque option (nous allons pour cela nous servir
'de l'argument "Parent" de la méthode CreateControl).
'Créons par exemple un bouton d'option :
Set ctl = CreateControl("NomFormulaire", acOptionButton, , ctl.Name, , 1500, 4000)
With ctl
.Name = "option1"
.OptionValue = 1
End With
'Et maintenant, création du code à exécuter sur AfterUpdate de Options :
Dim mdl As Module
Dim lng As Long 'Sert à récupérer le numéro de la ligne d'insertion de la procédure
Set mdl = Forms![NomFormulaire].Module
lng = mdl.CreateEventProc("AfterUpdate", "Options")
mdl.InsertLines lng + 1, _
vbTab & _
"If(option1.value = 2) then MsgBox " & Chr(34) & "Vous avez choisi 1." & Chr(34)
'On libère mémoire allouées aux variables.
Set ctl = Nothing
Set mdl = Nothing |
Partager