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 :

Formulaire sur requête triée par date [AC-2010]


Sujet :

Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Points : 17
    Points
    17
    Par défaut Formulaire sur requête triée par date
    bonjour,

    je viens vous voir car j'ai un petit souci.

    J'ai créé un formulaire issu d'une requête qui est elle-même triée par date.

    En fait, ma requête me donne les enregistrements dont j'ai besoin entre deux dates que je précise à l'ouverture de la requête.

    Du coup, quand j'ouvre mon formulaire celui-ci me demande la date de début et la date de fin comme si j'ouvrais la requête.

    Le problème est que dans mon formulaire je souhaiterais évoluer d'un enregistrement à l'autre ce qui reviendrait à me déplacer dans ma requête d'une ligne à l'autre.

    Mon problème est que lorsque je clique sur mon bouton "enregistrement suivant", il me demande à chaque fois de réécrire la date de début et la date de fin. Par contre, une fois ces données indiquées, je me retrouve bien avec le bon enregistrement.

    Ma question est la suivante : comment faire pour éviter de devoir redonner à chaque fois les dates de début et de fin sachant que j'ai 150 enregistrements minimum ?

    Je vous remercie par avance de l'aide que vous allez pouvoir m'apporter.

    Papychang

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Il suffit de les indiquer une seule fois :o) mais au bon endroit.

    La solution la plus simple est de faire un formulaire de paramétrage qui contiendra tes 2 dates puis de les exploiter.

    Tu peux le faire :
    Lors de l'instruction DoCmd.OpenForm en précisant le paramêter "ClauseWhere". De mémoire c'est le 3ième.

    Ex de clauseWhere :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "[TaDate] between" &  format(me.[DateDebut] ,"yyyy-mm-dd") & " and " & format(me.[DateFin] ,"yyyy-mm-dd")
    c'est ma solution favorite car elle offre une grande souplesse d'utilisation.

    Dans la requête qui allimente ton fromulaire. Là encore tu vas mettre comme critère de [TaDate]

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    between  format([forms]![NomTonFormParam]![DateDebut] ;"yyyy-mm-dd") & " and " & format([forms]![NomTonFormParam]![DateFin] ;"yyyy-mm-dd")

    Note que dans cette solution, [NomTonFormParam] peut être ton formulaire courant d'affichage. Il faut simplement demander un Me.Requery lorsqu'une des dates est mise à jour pour rafraichir l'affichage.

    Enfin tu peux changer le filtre du formulaire en modifiant la propriété Fliter et FilterOn du formulaire d'affichage. Là encore tu peux utiliser le formualire courant ou un externe.

    A+

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Points : 17
    Points
    17
    Par défaut
    Bonsoir,

    merci pour cette réponse rapide mais je n'ai pas tout compris comment faire et où insérer le code.

    pouvez vous me donner des explications en plus ?

    Merci

    Citation Envoyé par marot_r Voir le message
    La solution la plus simple est de faire un formulaire de paramétrage qui contiendra tes 2 dates puis de les exploiter.
    ça c'est bon, j'ai fais un formulaire avec deux champs de date à renseigner

    Citation Envoyé par marot_r Voir le message
    Tu peux le faire :
    Lors de l'instruction DoCmd.OpenForm en précisant le paramêter "ClauseWhere". De mémoire c'est le 3ième.

    Ex de clauseWhere :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "[TaDate] between" &  format(me.[DateDebut] ,"yyyy-mm-dd") & " and " & format(me.[DateFin] ,"yyyy-mm-dd")
    ce code, je le mets où ? je fais comment ?

    Citation Envoyé par marot_r Voir le message
    Dans la requête qui allimente ton fromulaire. Là encore tu vas mettre comme critère de [TaDate]

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    between  format([forms]![NomTonFormParam]![DateDebut] ;"yyyy-mm-dd") & " and " & format([forms]![NomTonFormParam]![DateFin] ;"yyyy-mm-dd")
    même question que précédemment

    Citation Envoyé par marot_r Voir le message
    Note que dans cette solution, [NomTonFormParam] peut être ton formulaire courant d'affichage. Il faut simplement demander un Me.Requery lorsqu'une des dates est mise à jour pour rafraichir l'affichage.
    toujours même question

    Citation Envoyé par marot_r Voir le message
    Enfin tu peux changer le filtre du formulaire en modifiant la propriété Fliter et FilterOn du formulaire d'affichage. Là encore tu peux utiliser le formualire courant ou un externe.
    toujours même question

    en tout cas, merci beaucoup de votre aide.

    papychang

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Points : 17
    Points
    17
    Par défaut
    Bonjour

    comme je n'ai pas bien compris les consignes de marot_r, je me permets de mettre en pj mon fichier test.

    vous pourrez constater que lorsque j'ouvre le formulaire facturation, il me demande les date de début et de fin du critère de tri de la requête enfant requête.

    comment faire pour que lorsque je clique sur la flèche "enregistrement suivant" mon formulaire n'ai pas à me demander une fois de plus les dates qui m'intéresse ?

    Merci beaucoup de votre aide et désoler d'être pénible avec ma demande.

    avec la pj c'est mieux
    Fichiers attachés Fichiers attachés

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    OK pour le formulaire.

    Comment ouvres-tu le rapport avec du VBA ou vace un macro ?

    Pour le reste de tes questions, il me semble que j'ai donné toutes indications nécessaires pour les utiliser. Pourrais-tu préciser ce qui te pose un problème car je ne vois pas quoi ajouter pour t'aider.

    A+

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par marot_r Voir le message
    Comment ouvres-tu le rapport avec du VBA ou vace un macro ?
    j'ouvre mon formulaire directement dans le volet de navigation mais je mettrait un menu général plus tard

  7. #7
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    OK, alors pour le moment il faudrait mettre les critères dans la source de données.

    Un truc qui devrait ressembler à

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select [TaTable].* from [TaTable] where [TaTable].[tonChampDate] BETWEEN  format([forms]![NomTonFormParam]![DateDebut] ;"yyyy-mm-dd") & " and " & format([forms]![NomTonFormParam]![DateFin] ;"yyyy-mm-dd")

    A+

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par marot_r Voir le message
    OK, alors pour le moment il faudrait mettre les critères dans la source de données.

    Un truc qui devrait ressembler à

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select [TaTable].* from [TaTable] where [TaTable].[tonChampDate] BETWEEN  format([forms]![NomTonFormParam]![DateDebut] ;"yyyy-mm-dd") & " and " & format([forms]![NomTonFormParam]![DateFin] ;"yyyy-mm-dd")

    A+
    Excusez moi mais je dois être con car je ne comprend rien.

    c'est quoi la source de donéne ?
    [TaTable] correspond à quoi ?
    [tonChampDate] correspond à quoi ?
    [NomTonFormParam] c'est quoi ?

    désolé... et merci encore.

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Points : 17
    Points
    17
    Par défaut
    c'est bon, grâce à votre aide j'ai trouvé !!! tout marche nickel.

    merci beaucoup

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

Discussions similaires

  1. Trie par date
    Par rainlily dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 08/08/2007, 16h02
  2. Trie par date
    Par rainlily dans le forum ASP.NET
    Réponses: 1
    Dernier message: 08/08/2007, 14h28
  3. Réponses: 7
    Dernier message: 23/03/2007, 14h46
  4. ouvire formulaire avec un tri par date
    Par flo456 dans le forum IHM
    Réponses: 2
    Dernier message: 01/02/2007, 15h55
  5. Debutant - Requête Grouper par Date
    Par ghan77 dans le forum Bases de données
    Réponses: 3
    Dernier message: 06/12/2005, 17h07

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