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 :

Effectuer une RechDom avec un critère suplémentaire [AC-2007]


Sujet :

Access

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Comptable
    Inscrit en
    Mars 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Effectuer une RechDom avec un critère suplémentaire
    Bonjour à tous,

    Je travail actuellement sur un dossier dans lequel, je dois retrouver le statut du client sur un mois antérieur.
    (Parfois le client n'a pas d'antériorité et parfois, il n'est pas présent tous les mois)

    J'ai une requête présentant le NUMERO CLIENT, la DATE, le STATUT et un ID numérique automatique.
    J'ai ajouté un champ STATUT ANTERIEUR : RechDom("[STATUT]";"Table";"[ID]=" & [ID]-1) qui va me chercher le statut dans le dernier enregistrement.

    Hors j'ai besoin du Statut Antérieur du précédent enregistrement pour le CLIENT précisément.
    J'ai modifier ma formule dans tous les sens sans succès.

    Quelqu'un pourrait m'aider car je bloque sérieusement dans l'avancer de ma requête ?

    En vous remerciant tous pour votre aide, vous êtes ma bible lorsque je monte des dossiers plus technique .

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 841
    Points : 7 975
    Points
    7 975
    Par défaut
    Bonjour,

    C'est quoi l'ID automatique dont tu parles dans ta requête ? rattaché au statut ou au client ?
    Le plus simple serait de passer par 2 requêtes :
    Une première R_Max_Statut pour trouver le client (regroupé) et la date maximum.
    La deuxième va donner le résultat en utilisant la requête précédente R_Max_Statut et en y reliant la "table" initiale avec le client et la date maximum trouvée, on peut afficher le statut correspondant.

    Cordialement,

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Comptable
    Inscrit en
    Mars 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par madefemere Voir le message
    Bonjour,

    C'est quoi l'ID automatique dont tu parles dans ta requête ? rattaché au statut ou au client ?
    Le plus simple serait de passer par 2 requêtes :
    Une première R_Max_Statut pour trouver le client (regroupé) et la date maximum.
    La deuxième va donner le résultat en utilisant la requête précédente R_Max_Statut et en y reliant la "table" initiale avec le client et la date maximum trouvée, on peut afficher le statut correspondant.

    Cordialement,
    Bonjour,

    Et merci pour votre réponse.

    Alors La Colonne ID correspond à ma clé primaire dans ma table source.
    C'est un numéro automatique créé par Access lorsque j'importe les données

    Exemple :
    Numéro Client / Date / Statut Actuel / ID / Statut Précédent
    Client n°1 / jan 2016 / Statut n°2 / ligne d'enregistrement 100 / Vide
    Client n°1 / mars 2016 / Statut n°2 / ligne d'enregistrement 500 / Statut n°2 (Soit le Statut que le client avait antérieurement, ma formule actuelle ne prend pas ce point, elle va chercher l'information dans l'enregistrement précédent ligne 499 qui correspond à un autre client)
    Client n°1 / avril 2016 / Statut n°2 / ligne d'enregistrement 1500 / Statut n°2
    Client n°1 / mai 2016 / Statut n°3 / ligne d'enregistrement 1600 / Statut n°2
    Client n°1 / décembre 2016 / Statut n°3 / ligne d'enregistrement 1800 / Statut n°3

    j'avoue ne pas avoir travaillé sur Access depuis longtemps en lui préfèrent bien souvent Excel, mais là, je ne peux pas faire autrement étant donné la taille de la base de données.

    J'ai beau fouillé, je ne vois pas comment prendre le nœud du problème.

    Merci à tous

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Comptable
    Inscrit en
    Mars 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    Peux-être qu'avec ce tableau ma demande sera plus simple à comprendre ?
    Ma requête va récupérer sur une table1, tous mes clients dans un pays et effectuer le classement suivant : Tri N° Client et Tri Date.
    ID N Client Date Statut Actuel PAYS test Valeur Correcte
    20572 770 01/01/2015 3 MAR 2 (Vide)
    41801 770 01/02/2015 2 MAR 2 3
    65381 770 01/03/2015 2 MAR 2 2
    90366 770 01/04/2015 2 MAR 2 2
    107325 770 01/05/2015 2 MAR 4 2
    123107 770 01/06/2015 2 MAR 4 2
    137178 770 01/07/2015 2 MAR 2 2
    164231 770 01/09/2015 2 MAR 2 2
    217327 770 01/12/2015 2 MAR 2 2



    Exemple pour ce client nous devons constater en Février son changement de statut.
    Pour créer la colonne test, j'ai utilisé la formule suivante : test: RechDom("[Statut Actuel]";"Table1";"[ID]=" & [ID]-1)
    Hors cette Formule est très bien, mais elle va me donner l'information en fonction de l'ID, et de ce fait me donner l'information d'un autre client.
    La valeur Correcte attendue va chercher les éléments du client sur la date antérieur à celle en cours.

    Bref, j'ai réellement besoin d'une solution pour étudier les modifications de mes clients mensuellement.

    En espérant avoir une réponse

  5. #5
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 841
    Points : 7 975
    Points
    7 975
    Par défaut
    Bonjour,

    J'ai pas encore compris le but, mais en répondant à :
    Hors cette Formule est très bien, mais elle va me donner l'information en fonction de l'ID, et de ce fait me donner l'information d'un autre client.
    La valeur Correcte attendue va chercher les éléments du client sur la date antérieur à celle en cours.
    Je proposerais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RechDom("[Statut Actuel]";"Table1";"[ID]=" & [ID]-1 & " AND [N CLIENT]=" & [N CLIENT])
    Cordialement,

  6. #6
    Futur Membre du Club
    Femme Profil pro
    Comptable
    Inscrit en
    Mars 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par madefemere Voir le message
    Bonjour,

    J'ai pas encore compris le but, mais en répondant à :

    Je proposerais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RechDom("[Statut Actuel]";"Table1";"[ID]=" & [ID]-1 & " AND [N CLIENT]=" & [N CLIENT])
    Cordialement,
    Bonjour et Vraiment Merci.
    J'avoue que je me rapproche du résultat avec ce code mais me reste la problématique avec l'ID.
    La valeur prend bien pour le bon client mais unique si le numéro ID se suit et se n'est pas le cas.

    Je ne dois pas travaillé sur l'ID à mon sens mais plutôt sur la date précédente.
    Encore Merci c'est déjà plus recherché que mes éléments actuels.

  7. #7
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 841
    Points : 7 975
    Points
    7 975
    Par défaut
    Bonsoir,

    Si c'est bon pour toi, n'oublies pas de clore la discussion et si possible d'apporter le code définitif avec les explications.

    Cordialement,

  8. #8
    Futur Membre du Club
    Femme Profil pro
    Comptable
    Inscrit en
    Mars 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Bonjour à tous,
    Je n'ai pas la réponse à cette demande. Je continue mes recherches et si je trouve, je l'ajouterais.
    Je ferme la discussion .
    A bientôt.

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

Discussions similaires

  1. [PHP-SQL] Effectuer une tâche avec plus de 3000 requêtes
    Par kevinf dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 17/12/2007, 08h34
  2. Réponses: 1
    Dernier message: 08/05/2007, 13h44
  3. VBA-E Comment réaliser une recherche avec plusieurs critères ?
    Par Larsen21 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 14/12/2006, 13h43
  4. [ Requete ] effectuer une requete avec la valeur d'un combo box
    Par Jeremie_Vi dans le forum Requêtes et SQL.
    Réponses: 13
    Dernier message: 28/06/2006, 15h36
  5. Effectuer une recherche avec jEdit
    Par lyon72 dans le forum Environnement de Développement Intégré (EDI)
    Réponses: 3
    Dernier message: 04/04/2006, 18h44

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