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 :

faire un état d'après recherche multicritère


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 32
    Points : 19
    Points
    19
    Par défaut [RESOLU] faire un état d'après recherche multicritère
    bonjour et encore merci pour vos précieuses informations.

    j'ai fait un formulaire de recherche multicritère (modèle CAFEINE) et j'aimerai pouvoir faire un état avec les résultats de la recherche. Sur un précédent post, vous dites qu'il faut faire un état avec les champs de la recherche mais le problème, c'est que le résultat de ma recherche ne s'affiche pas sur mon état. Avez vous un code pour un bouton "afficher etat" qui me permettrai de réaliser cette opération, je vous remercie.

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Par défaut
    C'est aussi dans la FAQ il me semble. Tu enregistre le résultat de ta recherche dans une requête qui sera la source de ton état.

    Si SQL et la chaine qui contient ta requête tu l'enregistre comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CurrentDb.QueryDefs("R_NomRequete").SQL = SQL
    Amicalement

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 32
    Points : 19
    Points
    19
    Par défaut
    merci pour ta réponse.

    par contre, le code que tu me donnes comment je peux le mettre dans ma requete? il faut pas que le SQL commence par SELECT?

    a bientot

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Par défaut
    Pour faire ta recherche tu déclare bien des variables non du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim stDocName As String
    Dim SQL As String
     
    SQL = "SELECT NumMembre, NomPrenom, Organisation, Role FROM T_Membre Where NumMembre <> 0 "
     
    If (Forms!F_Recherche!chkOrg = True) And Not IsNull(Forms!F_Recherche!txtRechOrg) Then
        SQL = SQL & "And Organisation like '*" & Forms!F_Recherche!txtRechOrg & "*' "
    End If
     
    ....
    A la fin la variable SQL tu l'affecte à la requête que tu enregistre. C'est tous
    Amicalement

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 32
    Points : 19
    Points
    19
    Par défaut [RESOLU] faire un état d'après recherche multicritère
    [RESOLU] merci beaucoup tu es mon sauveur

    pour ceux que ça interesse, le code donne ça:

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    Private Sub RefreshQuery()
     
    On Error GoTo Err_RefreshQuery
     
    Dim SQL As String
    Dim SQLWhere As String
     
     
    SQL = "SELECT numero_contrat, contenu, datefin, delai_resiliation, societe, service, fournisseur, code, date_paiment_theorique, date_paiement_effectif FROM rqy_contrat WHERE societe Is Not Null "
     
    If Not Me.chkSociété Then
        SQL = SQL & "And societe = '" & Me.cmbRechSociété & "' "
    End If
    If Not Me.chkFournisseur Then
        SQL = SQL & "And fournisseur = '" & Me.cmbRechFournisseur & "' "
    End If
    If Not Me.chkNumero_contrat Then
        SQL = SQL & "And numero_contrat = '" & Me.cmbRechNumero_contrat & "' "
    End If
    If Not Me.chkCode Then
        SQL = SQL & "And code = '" & Me.cmbRechCode & "' "
    End If
    If Not Me.chkDate Then
        SQL = SQL & "And date_paiment_theorique = #" & Format(Me.cmbRechDate, "mm/dd/yyyy") & "# "
    End If
     
    SQLWhere = Trim(Right(SQL, Len(SQL) - InStr(SQL, "Where ") - Len("Where ") + 1))
     
    SQL = SQL & ";"
     
    CurrentDB.QueryDefs("qryTemp").SQL = SQL
     
    Me.lblStats.Caption = DCount("*", "rqy_contrat", SQLWhere) & " / " & DCount("*", "rqy_contrat")
    Me.lstResults.RowSource = SQL
    Me.lstResults.Requery
     
    Exit_RefreshQuery:
        Exit Sub
     
    Err_RefreshQuery:
        Resume Exit_RefreshQuery
    End Sub
    [/code]

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

Discussions similaires

  1. [AC-2003] Recherche multicritère pour impression d'état
    Par Chagui dans le forum IHM
    Réponses: 13
    Dernier message: 18/11/2010, 15h00
  2. [AC-2003] Comment ajouter un état dans une recherche multicritére
    Par galius21 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 20/05/2009, 14h17
  3. Réponses: 1
    Dernier message: 11/01/2008, 04h57
  4. faire une recherche multicritère
    Par yann_72 dans le forum WinDev
    Réponses: 7
    Dernier message: 16/10/2007, 12h11
  5. Réponses: 24
    Dernier message: 09/07/2007, 13h08

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