IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Valeur dans Access


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut Valeur dans Access
    Salut à tous !

    Quelqu'un saurait comment faire en sorte que je puisse voir une valeur calculée dans un formulaire, directement dans la table ?

    Par exemple, dans le formulaire j'ai programmé une case de façon à calculer automatiquement la valeur. La valeur entrée au clavier, par exemple 20 pieds est calculée dans une autre case ce qui donne exactement 6,096 mètres. Cette dernière valeur n'apparaît pas dans la table correspondante bien que j'ai fait rajouter une fonction "Explicit" afin de forcer le report de la valeur dans la table, mais il n'y a rien.
    De plus, il ne s'agit pas de relations dans la table. C'est une table et j'ai mis toutes les colonnes dans un formulaire. Toutes les données sont reportées dans la table, sauf la valeur calculée en mètres qui n'apparaît pas.

    Merci d'avance !

    vautour29
    [/b]

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Une valeur calculée ne doit jamais être stockée dans une table (sauf cas exceptionnel de calculs complexes).

    De plus Explicit est un option qui n'affecte que VBA ... en aucun cas les données

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    Citation Envoyé par Tofalu
    Une valeur calculée ne doit jamais être stockée dans une table (sauf cas exceptionnel de calculs complexes).

    De plus Explicit est un option qui n'affecte que VBA ... en aucun cas les données :wink:
    Même s'il ne s'agit pas de calculs complexes, on peut tout de même stocker cette valeur dans la table ?

    Merci

    vautour29

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    bien sur que l'on peut
    mais c'est inutile

    imaginons un crédit sur 20 ans (240 mois) je ne vais pas stocker dans ma table les 240 paiements en capital, les 240 paiements en interet et les 239 valeurs futures que je peux recalculer à tout moment

    nous sommes dans un système de gestion de données, ce sont les données qui seront stockées, pas les calculs

    par contre tu as raison il faut parfois pour des raisons de performances ou de commodités s'affranchir des normes et des modèles, mais cela doit rester exceptionnel et suppose une certaine maîtrise
    Elle est pas belle la vie ?

  5. #5
    Membre régulier
    Inscrit en
    Septembre 2005
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 137
    Points : 74
    Points
    74
    Par défaut
    Si tu désires stocker ta valeur calculée dans une table, yu fais un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim db As Database
    Dim rst As Recordset
     
       Set bds = CurrentDb
        Set nt = bds.OpenRecordset("nomdelatable", OpenTable) // Il faut que la table existe auparavant !
     
         nt.MoveFirst    
        nt.Edit
        nt!champ1 = Forms![Calcul].valeurcalculee.Value  //champ1 = le champ qui sert au stockage. 
        nt.Update
    Mais le mieux est de stocker aussi la valeur qui a servit au calcul (dans ton cas, '20') afin de ne stocker que des valeurs calculées qui ne sont pas déjà dans la table. Dans ce cas, il faut faire une recherche de l'existence de ta "valeur origine" avec une boucle Do Until nt.EOF ... Loop. ;-)

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 97
    Points : 52
    Points
    52
    Par défaut
    cela donnerait nt!LONG_S = Forms[LONG_S * 0,3048].LONG_S*0,3048.Value ... sauf que ca me donne une erreur de compilation. Dans la case "Calcul" j'ai mis la formule...or je me demande s'il faut refaire le calcul pour "valeurcalculee" ou c'est autre chose.

    Merci d'avance! :)


    vautour29

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Incrémenter une valeur dans Access
    Par banzaiman dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 15/10/2008, 16h27
  2. [VB6]recherche d'une valeur dans une table access
    Par fahmichebaane dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 19/04/2006, 15h26
  3. [VBA-A] Récupérer une valeur dans une table Access
    Par Dude2006 dans le forum VBA Access
    Réponses: 1
    Dernier message: 15/04/2006, 23h56
  4. Recherche valeur dans table Access
    Par Stefloulou dans le forum Access
    Réponses: 1
    Dernier message: 05/11/2005, 08h45
  5. Réponses: 5
    Dernier message: 09/09/2005, 17h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo