Bonjour,
je travaille actuellement pour mon association sur une base de gestion de projets et de factures.
Pour la partie facturation j'ai deux tables Facturation et Facturation_detail
(un projet pouvant être facturé en plusieurs fois, les tables sont liées par le champ N°Fact en 1 à plusieurs)
J'ai créé un formulaire Facturation_saisie à partir d'une requete basée sur la table Facturation-saisie et un sous-formulaire Facturation_detail directement construit sur la table, champ père et fils = N°Fact
dans mon sous-formulaire j'ai un champ indépendant qui calcule la somme Montant_facturé.
je veux récupérer cette valeur pour l'attribuer ensuite au champ Total_facture de mon formulaire principal.
j'ai fait ce code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Private Sub Montant_facturé_Exit(Cancel As Integer) Dim valfacture As Integer Me.Refresh valfacture = [Texte12].Value Forms![Facturation-Saisie].[Total_facture].Value = valfacture MsgBox valfacture, vbCritical End Sub
J'ai deux problèmes sur lesquels je bloque :
1 -
le problème c'est que la valeur valfacture retournée correspond à la valeur avant recalcul du champ [Texte12] ; alors que la valeur de texte12 est correcte.
j'ai essayé aussi avec l'évènement Form_AfterUpdate()
le Msgbox se fait avant le refresh et le calcul du champ Texte12
2-
comment donner au champ [Total_facture] du formulaire principale la valeur valfacture récupérée ?
j'ai cette erreur """Erreur d'exécution '7878' - Les données ont été modifiées""" pour la ligne de code Forms![Facturation-Saisie].[Total_facture].Value = valfacture
voilà des idées ? peut être que je me trompe aussi complètement de méthode ?
Merci. Sylvie
Partager