[Sous-formulaire][VBA] [Fermé]

Signaler
-
Messages postés
490
Date d'inscription
dimanche 14 mars 2004
Statut
Membre
Dernière intervention
12 septembre 2007
-
Bonjour, ou re-bonjour pour ceux qui m'ont déjà aidé ce matin....
Je souhaiterai récupérer le numéro d enregistrement d'un sous-formulaire intégré dans un formulaire.
Voilà mon code de mon formulaire:

Sub CurrentFormRecord(Formulaire As Form)
Dim recordnum As Long
recordnum = Formulaire.CurrentRecord
End Sub

Private Sub Commande65_Click()
MsgBox recordnum
End Sub

En fait mon sous-formulaire affiche une table et si un utilisateur choisit une ligne, je veux récupérer le numéro de l enregistrement.
Mais la MsgBox est vide quand je clique sur le bouton...
Quelqu'un sait pourquoi?
Merci

3 réponses

Messages postés
490
Date d'inscription
dimanche 14 mars 2004
Statut
Membre
Dernière intervention
12 septembre 2007
95
Bonjour,
Il semble qu'il manque une instruction (exécution de "CurrentFormRecord" dans votre Private Sub...

Private Sub Commande65_Click()
Dim recordnum As Long
CurrentFormRecord
recordnum = Formulaire.CurrentRecord
End Sub
Messages postés
490
Date d'inscription
dimanche 14 mars 2004
Statut
Membre
Dernière intervention
12 septembre 2007
95
Re bonjour,
Essayez ce code:
Private Sub Commande65_Click()
Dim recordnum As Long
recordnum = Form_Le nom du sous formulaire.CurrentRecord
MsgBox recordnum
End Sub

Bonjour,

et de plus, la variable [recordnum] est déclaré localement
dans le routine [CurrentFormRecord]. Celle-ci ne peut être
connu de la routine [Commande65_Click].

Il faut déclarer la variable a l'extérieur des routines comme
suit :

Dim recordnum As Long

ou à l'extérieur du module, comme suit :

Public recordnum As Long

@+
Lupin
Messages postés
490
Date d'inscription
dimanche 14 mars 2004
Statut
Membre
Dernière intervention
12 septembre 2007
95
Merci de la précision.