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

VBA Access Discussion :

Afficher le résultat d'une requête paramétré dans un formulaire Access et pouvoir l'exporter


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 15
    Points : 11
    Points
    11
    Par défaut Afficher le résultat d'une requête paramétré dans un formulaire Access et pouvoir l'exporter
    bonjour,

    j'ai vraiment besoin de votre aide car je suis dans la boue.

    je dois construire un formulaire Access dans ce formulaire je dois afficher le résultat d'une requête qui utilise une date comme critère. c'est a dire dans le formulaire je vais saisir 01/01/2017 ce qui va déclencher l'exécution de la requête et elle va m’afficher ce résultat selon la date saisie dans le formulaire.

    en deuxieme c'est de pouvoir exporter ce résultat dans un fichier excel.

    SVP aidez moi je suis vraiment dans le besoin. je vous remercie par avance

    voila ma requête en cas de besoin:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    PARAMETERS [date effet] DateTime;
    SELECT Adherent.Filiale AS [Nom du délégataire], [ContratActif_A-C].rum AS [Numéro Contrat Allianz], Null AS [Numéro contrat délégataire], Null AS [Numero SS], [ContratActif_A-C].garantie AS [type de garantie], Adherent.nom, Null AS [Nom usage], Adherent.prenom, Null AS [Prenom 2], Null AS [prenom 3], Adherent.dtnaissance AS [Date de naissance], Adherent.qualite AS Sexe, Adherent.ville AS [Commune de naissance], Adherent.dtentree AS [Date entrée], Adherent.dtsortie AS [date sortie], [ContratActif_A-C].MotifResiliation AS [motif sortie], Adherent.commentaire, [ContratActif_A-C].Matricule, [ContratActif_A-C].DtEffet, [ContratActif_A-C].DtFin
    FROM Adherent INNER JOIN [ContratActif_A-C] ON Adherent.Matricule = [ContratActif_A-C].Matricule
    WHERE ((([ContratActif_A-C].DtEffet)<=[date effet]) AND (([ContratActif_A-C].DtFin)>=[date effet] Or ([ContratActif_A-C].DtFin) Is Null));

  2. #2
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    Bonsoir

    Si tu passes par un formulaire tu crées une Zone de texte dédiée à la date.
    Attention, sa source de données doit être vide (non liée à une table ou requête)

    Ensuite tu l'utilises dans la requête en Critères du champ concerné. Comme ceci en mode Création : (à adapter)
    [Formulaires]![NomFormulaire]![NomZoneTexte]
    Passer par un formulaire te donne d'autres possibilités. Par exemple, tu peux contrôler la validité des valeurs données AVANT l'exécution de la requête (et son plantage !)

    Pour exporter le résultat de la requête utilises la méthode TransferSpreadsheet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel8, "NomRequête", "CheminCompletFichierExcel"
    (à adapter ; voir l'aide)

    Titi95
    Un problème bien posé est à moitié résolu

  3. #3
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 15
    Points : 11
    Points
    11
    Par défaut
    salut,

    en fait voilà j'ai réussi a le fair comme tu viens de l'indiquer, j'ai un dernier truc c'est que le résultat de la requête je l'affiche dans un sous formulaire, du coup quand je saisi la date, il faut que je clique sur le bouton entrer en suite je clique sur actualiser tout pour que le sous formulaire affiche les données. une solution pour palier a ce problème STP

  4. #4
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    Bonjour

    Si tu utilises la touche Entrer (ou Tab) en fin de frappe de la date, il faut mettre une actualisation du sous-formulaire dans l'événement Sur perte focus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms![NomFormulaire]![NomContrôleSousFormulaire].Form.Requery
    Titi95
    Un problème bien posé est à moitié résolu

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/04/2016, 15h00
  2. [WD10] Afficher le résultat d'une requête paramétrée dans une tabe
    Par Menadel dans le forum WinDev
    Réponses: 8
    Dernier message: 23/05/2012, 17h58
  3. Réponses: 2
    Dernier message: 14/01/2011, 19h33
  4. [OpenOffice][Base de données] Afficher des paramètres d'une requête paramétrée dans un formulaire
    Par ggnore dans le forum OpenOffice & LibreOffice
    Réponses: 0
    Dernier message: 02/09/2009, 11h37
  5. Réponses: 13
    Dernier message: 26/07/2007, 08h50

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