1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut La valeur la plus récente d'un champ (Access)

    Bonjour
    Y'a t-il quelqu'un qui peut me décrire un code VBA qui me permet d'obtenir la valeur la plus récente (dernière valeur saisie) d'un champ nommé "Code_OF" qui est de type numérique et qui fait partie d'une table nommée "Ordre_de_fabrication" (cette table contient également un champ "date_OF")!!
    J'ai besoin de cette valeur car elle me permet de faire un calcul lors du passage d'un formulaire à un autre!!
    Merci d'avance
    Cordialement

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    9 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 9 676
    Points : 14 820
    Points
    14 820

    Par défaut

    Bonjour.

    On peut (avec DMAX("TonChamp", "TaTable")mais ce n'est peut-être pas une bonne idée si ton application est utilisée par plusieurs personnes en même temps.
    Si tu as plusieurs utilisateurs, rien ne prouve que le dernier enregistrement soit celui que tu veux.
    Il vaudrait peut-être mieux trouver un moyen de transmettre cette information au moment où tu es sur que c'est la bonne.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut

    Citation Envoyé par marot_r Voir le message
    Bonjour.

    On peut (avec DMAX("TonChamp", "TaTable")mais ce n'est peut-être pas une bonne idée si ton application est utilisée par plusieurs personnes en même temps.
    Si tu as plusieurs utilisateurs, rien ne prouve que le dernier enregistrement soit celui que tu veux.
    Il vaudrait peut-être mieux trouver un moyen de transmettre cette information au moment où tu es sur que c'est la bonne.

    A+
    D'abord merci
    Non mon application sera utilisée par une seule personne donc un tel problème ne se pose plus
    Toutefois cette dernière valeur je veux l'attribuer à une variable!! comment faire?

  4. #4
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut

    Voici ça n'a pas marché:
    Nom : Capture.PNG
Affichages : 27
Taille : 3,6 Ko
    Nom : Capture1.PNG
Affichages : 26
Taille : 21,9 Ko

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut

    Bah j'ai ajusté un peu le code comme suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    Private Sub suiviproduction_Click()
      'Ajout du contenu de la table "table_aux" dans la table "production"
        Dim oRst3 As DAO.Recordset  ' table en lecture
        Dim oRst4 As DAO.Recordset  ' table en ajout
        Dim nb As Long
        Dim oDb As DAO.Database
        Set oDb = CurrentDb
        Set oRst3 = oDb.OpenRecordset("SELECT * FROM table_aux", dbOpenSnapshot)
        Set oRst4 = oDb.OpenRecordset("SELECT * FROM Production", dbOpenDynaset)
        nb = Max("Code_OF", "Ordre_de_fabrication")
        While Not oRst3.EOF
             ' création nouvel enregistrement
                   oRst4.AddNew
                   oRst4![Code_face] = oRst3![CodeF]
                   oRst4![Date_changement] = oRst3![Date_changement]
                   'Avoir le code OF le plus récent et lui ajouter 1
                   oRst4![Code_OF] = nb + 1
             ' ... ici éventuellement les autres champs
                   oRst4.Update
                   oRst3.MoveNext
        Wend
        oRst3.Close
        oRst4.Close
        Set oRst3 = Nothing
        Set oRst4 = Nothing
        DoCmd.Close
        DoCmd.OpenForm "Suivi_de_la_production"
    End Sub
    et ça m'a donné comme msg d'erreur le suivant:
    Nom : Capture.PNG
Affichages : 24
Taille : 9,0 Ko
    Je pense que j'ai besoin d'une telle instruction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set oRst = oDb.OpenRecordset("SELECT * FROM Ordre_de_fabrication", dbOpenSnapshot)
    Mais je sais pas comment!!!

  6. #6
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    9 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 9 676
    Points : 14 820
    Points
    14 820

    Par défaut

    Bonjour.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  7. #7
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut

    Citation Envoyé par marot_r Voir le message
    Bonjour.

    A+
    Oui je pense que je m'aproche de la solution!! merci mais il y'a encore un msg d'erreur
    Nom : Capture.PNG
Affichages : 23
Taille : 6,2 Ko
    Je sais que je vous dérange mais j'ai vraiment besoin d'aide je suis débutante et mon sujet de PFE compte sur cette application

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    Private Sub suiviproduction_Click()
      'Ajout du contenu de la table "table_aux" dans la table "production"
        Dim oRst3 As DAO.Recordset  ' table en lecture
        Dim oRst4 As DAO.Recordset  ' table en ajout
        Dim nb As Long
        Dim oDb As DAO.Database
        Set oDb = CurrentDb
        Set oRst3 = oDb.OpenRecordset("SELECT * FROM table_aux", dbOpenSnapshot)
        Set oRst4 = oDb.OpenRecordset("SELECT * FROM Production", dbOpenDynaset)
        nb = Nz(DMax("Code_OF", "Ordre_de_fabrication"), 0)
        While Not oRst3.EOF
             ' création nouvel enregistrement
                   oRst4.AddNew
                   oRst4![Code_face] = oRst3![CodeF]
                   oRst4![Date_changement] = oRst3![Date_changement]
                   'Avoir le code OF le plus récent et lui ajouter 1
                   oRst4![Code_OF] = nb + 1
             ' ... ici éventuellement les autres champs
                   oRst4.Update
                   oRst3.MoveNext
        Wend
        oRst3.Close
        oRst4.Close
        Set oRst3 = Nothing
        Set oRst4 = Nothing
        DoCmd.Close
        DoCmd.OpenForm "Suivi_de_la_production"
    End Sub

  8. #8
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut

    Bah je comprends le problème!! en fait la valeur du code_of doit être prise de la table "ordre de fabrication" et moi je veux faire entrer cette valeur dans la table "production" qui est en relation avec la table "ordre_de_fabrication" avant de la faire entrer dans la table "ordre_de_fabrication" c'est qui est impossible!!!!
    Mais moi j'ai besoin d'enter cette valeur avant!! y'a t-il un truc? ou je dois penser au problème autrement???

  9. #9
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    9 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 9 676
    Points : 14 820
    Points
    14 820

    Par défaut

    Bonjour.

    ou je dois penser au problème autrement ?
    à mon avis oui.

    Peux-tu poster une copie d'écran de tes relations ? Je suis un peu mêlé par te description.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  10. #10
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut

    Citation Envoyé par marot_r Voir le message
    Bonjour.



    à mon avis oui.

    Peux-tu poster une copie d'écran de tes relations ? Je suis un peu mêlé par te description.

    A+
    Oui bien suuuuuur
    Nom : Capture.PNG
Affichages : 23
Taille : 21,7 Ko

  11. #11
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    9 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 9 676
    Points : 14 820
    Points
    14 820

    Par défaut

    Merci, joli modèle très clair.

    De ton modèle il ressort que l'ordre de fabrication doit exister avant d'être ajouter à ta production.

    Quelles sont les étapes de ta saisie tel que tu les souhaites (pas forcément qui fonctionne actuellement) ?
    D'après ton modèle cela devrait être quelque chose comme :

    1. L'utilisateur créer un ordre de facturation.
    2. L'utilisateur choisi une production
    3. Le système transfert l'ordre de facturation dans la production.


    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  12. #12
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut

    Merci, joli modèle très clair.
    Merci c'est gentil marrot

    D'après ton modèle cela devrait être quelque chose comme :

    1. L'utilisateur créer un ordre de facturation.
    2. L'utilisateur choisi une production
    3. Le système transfert l'ordre de facturation dans la production.
    En fait c'est ça et c'est pour cette raison que j'ai pensé à une autre solution pour gérer mes formulaires différemment
    J'espère que ça marche!!! Si non si je me bloque je reviens certainement sur ce forum
    Merci de nouveau pour votre temps

  13. #13
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 24
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : mars 2017
    Messages : 47
    Points : 34
    Points
    34

    Par défaut

    Bonjour Marrot
    Bah j'ai trouvé une solution différente et j'ai résolu le problème
    Mais j'ai un autre problème (je suppose qu'il est simple mais pas pour moi)
    En fait, je veux que seules les deux commandes "Code MP" et "Quantité" soit initialement vide à l'ouverture de mon formulaire càd comme le montre la figure ci dessous:
    Nom : Capture&.PNG
Affichages : 16
Taille : 54,0 Ko
    Pour le moment si j'ouvre le nouveau enregistrement j'aurais les valeurs du dernier enregistrement dans ces deux commande comme le montre la figure ci_dessou
    Nom : Capture.PNG
Affichages : 16
Taille : 50,8 Ko
    J'ai beaucoup essayer mais j'arrive pas à résoudre ce problème qui parait peut-être débil !!
    Merci d'avance
    Cordialement

  14. #14
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    9 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 9 676
    Points : 14 820
    Points
    14 820

    Par défaut

    Bonjour.

    Peux-tu poster le code que tu utilises pour ouvrir le fichier ?

    Est-ce que tu souhaites pouvoir voir des données existantes ou seulement les nouvelles données ?

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  15. #15
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    9 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 9 676
    Points : 14 820
    Points
    14 820

    Par défaut

    Bonjour.

    Je ne dispose pas du temps nécessaire pour regarder dans ton application.

    Comme la question est différente de celle initiale, je t'invite à créer une nouvelle discussion pour elle, cela lui donnera plus de visibilité.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 15/08/2011, 10h47
  2. Réponses: 1
    Dernier message: 17/05/2011, 10h29
  3. [vXIr2] valeur la plus récente d'une table
    Par schkrumble dans le forum Designer
    Réponses: 5
    Dernier message: 02/02/2010, 14h29
  4. Affichage date plus récente dans requête champ expression
    Par sl1980 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 17/08/2007, 09h47
  5. Valeur la plus élevée d'un champ
    Par belzeluc dans le forum PHP & MySQL
    Réponses: 3
    Dernier message: 10/01/2007, 21h24

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