Question Access 2003

Fermé
lucien067 Messages postés 3 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 18 août 2007 - 17 août 2007 à 00:56
enigmatoile Messages postés 730 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 15 mars 2008 - 17 août 2007 à 13:21
J'ai besoin de calculer une moyenne reprenant 4 valeurs contenues dans un enregistrement d'une table.
Je m'explique :
Je saisis chaque jour le relevé de mesures effectuées sur des tuyaux.
J'ai donc 4 champs diamètres (Diam1, Diam2, Diam3 et Diam4) dans chaque enregistrement (1 par jour) de ma table Relevés.
Je voudrai calculer automatiquement le champ DiamMoyen stocké lui aussi dans cette table.
Pour corser le tout (comme si ce n'était pas assez simple), je dois reprendre l'historique des mesures effectuées, et je n'ai pas toujours 4 valeurs par jour. Je ne peux donc pas faire une moyenne des 4 valeurs car l'une (au moins) de ces valeurs peut être à zéro car elle n'a pas été relevée.
Merci

3 réponses

enigmatoile Messages postés 730 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 15 mars 2008 5
17 août 2007 à 10:48
Bonjour,

Déjà tout champ calculé doit se faire dans une requete et non dans une table.

Je te conseille donc de te construire une requete avec Diam1, Diam2, Diam3, Diam4 et un champ calculé de type moyenne : (Nz[Diam1]+Nz[Diam2]+Nz[Diam3]+Nz[Diam4])/((VraiFaux(IsNull(Diam1);0;1)+(VraiFaux(IsNull(Diam2);0;1)+(VraiFaux(IsNull(Diam3);0;1)+(VraiFaux(IsNull(Diam4);0;1)

Ca devrait fonctionner
0
lucien067 Messages postés 3 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 18 août 2007
17 août 2007 à 12:05
Merci ça semble répondre à mon problème.
Mais comment afficher la valeur calculée dans le formulaire de saisie ?
0
enigmatoile Messages postés 730 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 15 mars 2008 5
17 août 2007 à 13:21
Ben au lieu de baser ton formualire sur ta table tu le bases sur ta requete, c'est tout :)
0