ACCESS : champ calculé formulair & lien table

Fermé
schneider - 15 mai 2006 à 10:05
 Apouf - 11 mai 2016 à 10:18
Bonjour
Dans une table le champ calcul est déclaré.
Dans le formulaire dans le champ calcul, une formule est saisie
Le résultat est bien obtenu dans le champ calcul du formulaire
Mais il ne se répercute pas dans le champ calcul de la table.
Il faut faire un copier coller.

Est-il possible d'obtenir le résultat d'un calcul dans le formulair dans la table concernée.

Merci
Luc

4 réponses

Elbie49 Messages postés 1 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 17 août 2007 6
17 août 2007 à 17:22
Bonjour,

Moi aussi j'ai été confrontée au même problème, et je pense avoir trouvé la solution... En voici un exemple, à chacun ensuite de l'adapter à ses besoins.

Supposons qu'on ait une table Tbl_Recettes avec les champs :

Spectateurs
PrixPlace
RecetteMatch

On a créé un formulaire Frm_Recettes à partir de la table avec les champs :

Spectateurs
PrixPlace
Recette

Recette est un champ calculé correspondant à : Spectateurs*PrixPlace

On suppose que les informations sont saisies dans l'ordre ci-dessous. Pour insérer la recette du match dans la table à partir du formulaire, il faut sélectionner le contrôle PrixPlace, puis Propriétés, Procédure événementielle, Sur sortie, entrer le code VBA suivant :

Private Sub PrixPlace_Exit(Cancel As Integer)
Dim RM As Variant
RM = Forms![Frm_Recettes]![Recette]
Me.[RecetteMatch] = RM
Me.Refresh
End Sub

Et les données sont mises à jour dans la base, magique !!!

Faites-en bon usage, à savoir que comme le disait HDU, on ne stocke pas en général le résultat d'un calcul dans une table, mais bon, on peut avoir besoin de le faire pour une raison particulière...

Elbie49
6
Bonjour,

Mais comment fais tu pour que "Recette" soit un champ calculé correspondant à : Spectateurs*PrixPlace ??
Doit on écrire du code VBA??

Merci d'avance
Coralie
0
merci pour le code que représente Me?
0
blux Messages postés 26001 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 24 avril 2024 3 289
28 mai 2011 à 21:24
Généralement, la base courante...
0
J'ai essayé ceci dans ma BD mais ça ne marche pas:
quantité est le champ du formulaire SaisieCommande et total_line est la colonne de la table commande que je veux mettre à jour. LE code est ci-dessous
------------------------------------------------------------------
Private Sub quantite_Exit(Cancel As Integer)
Dim RM As Variant
RM = Forms![Form_SaisieCommande]![quantite]
Me.[Commande]![total_ligne] = RM
Me.Refresh
End Sub
------------------------------------------------------------------
mais en vain
0
Chez moi la fonction champs calculé de Access 2010 ne fonctionne pas et grâce à ce code j'ai enfin la solution à un problème qui me tarabuste depuis des jours (et des nuits !!!). Merci beaucoup
Cordialement
0