Bonjour,

J'aimerais bien intercepter les évènements d'une forme dans une autre.
Le but ?
Ma db reprend les descriptions de fichiers que je stocke sur mon disque dur.
La forme 1 est une liste des fichiers trouvés sur mon disque dur. S'ils ont une description, elle indiquée. Sinon, je mets une belle petite icône "?".
Pour les fichiers sans description, l'utilisateur peut (via un menu contextuel) demander l'ajout du fichier dans la db. S'ouvre alors une forme 2 où l'utilisateur peut décrire le document.

Ce que j'aimerais bien c'est que la forme1 entende le forme2_AfterInsert pour ajouter la nouvelle description et remplacer le "?" par un beau "OK".

Dans ma conception (très orientée java) de la programmation, c'est à la forme1 de dire qu'elle veut "écouter" la forme2.

Donc j'ai écrit dans la forme1:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private WithEvents frm2 As Form_frmForme2
 
'A appeller quand nécessaire
Private Sub OpenAdminForm()
    DoCmd.OpenForm "frmForme2"
    Set frm2 = Forms.Frmforme2
End Sub
 
 
Private Sub frm2_AfterUpdate()
    MsgBox "Document updated"
End Sub
 
Private Sub frm2_AfterInsert()
    MsgBox "Document inserted"
End Sub
A la compilation, j'ai un message d'erreur :
Object does not source automation events

Et l'explication:
An object must provide a default source interface so that you can write event procedures for its events. This error has the following causes and solutions:

You tried to write an event procedure for an event of an object, but that event isn't available outside the object.
See your object’s documentation for suggestions on less direct ways to deal with the event you are interested in.

Ce que j'essaye n'est pas possible ?
Voyiez-vous une autre possibilité de faire ce que je veux faire à partir de la Forme1 ?

Merci,

Laurent