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 :

Filtre pour Formulaire (encore)


Sujet :

Access

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2011
    Messages : 12
    Par défaut Filtre pour Formulaire (encore)
    Re Bonjour.....encore moi.....

    Ma DB est presque complete....il ne me reste que UN filtre a implanté.....

    Dans Tb_Data, j'ai 3 colonne de Catégorie (Categorie_1, Categorie_2, Categorie_3) lié a Tb_Categorie (pour menu déroulant...pour forcer les choix)


    Dans ma fenetre de recherche (Fr_Recherche), j'ai ajouté une Zone de Liste Deroulante (cmbCategorieRecherche)

    Cette Liste Déroulante est aussi lié a Tb_Categorie

    Mon besoin, est un Critere a mettre dans ma Requete (Re-Recherche) pour permettre de Filtrer les donnés si un choix est fait dans la Liste Deroulante
    A noter, que l'info choisi dans la menu deroulant de la fenetre de recherche, peut se retrouver dans un des 3 champs (Categorie_1, Categorie_2, Categorie_3)

    un énorme merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2011
    Messages : 12
    Par défaut
    Petite MAJ.....

    J'ai ce Critere :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VraiFaux(NbCar([Forms]![Fr_Recherche]![cmbCategorieRecherche] & "")>0,[Forms]![Fr_Recherche]![cmbCategorieRecherche])
    Il fonctionne......un peu....lolll

    Si je le mets dans une des 3 Catégorie.....et dans mon ComboBox je choisi l'info....ca fonctionne.....

    MAIS

    Si j'efface l'info de mon Combo Box.....il ne retourne RIEN.....il devrait retourner TOUT, puisque aucun filtre.....

    Merci

  3. #3
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 113
    Par défaut
    Re,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    VraiFaux(NbCar([Forms]![Fr_Recherche]![cmbCategorieRecherche] & "")>0,[Forms]![Fr_Recherche]![cmbCategorieRecherche])
    Plusieurs problèmes :

    1) pourquoi ceci, pour traiter un Null ?

    & ""
    Pourquoi ne pas faire ceci plutôt ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    not isnull([Forms]![Fr_Recherche]![cmbCategorieRecherche])
    2) le séparateur de paramètres est la virgule avec VBA MAIS point-virgule avec les expressions. Je doute que cette syntaxe fonctionne.

    3) Comme je te l'ai indiqué dans ta demande précédente, VraiFaux() / iif() à un contrat d'utilisation précis. Aucun des paramètres n'est facultatif.
    Donc un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     vraifaux(isnull(null);"VRAI")
    ça NE FONCTIONNE PAS !

    La déduction que tu fais ici est fausse :
    Si j'efface l'info de mon Combo Box.....il ne retourne RIEN.....il devrait retourner TOUT, puisque aucun filtre.....
    Si une requête fonctionne avec critère un critère, le fait de ne pas mettre de valeur n'annulera pas le filtre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE colonne1 = forms!monform!macombo
    Si macombo est 1, il renverra tous les enregistrements avec colonne=1.
    Si elle est Null (vide) elle renverra ceux avec colonne=Null.

    Pour le traitement cela dépend du type de la colonne.

    cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  4. #4
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    3 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 033
    Par défaut
    Bonjour,
    Je suppose que ta recherche s'opère avec un LIKE, ajoute "*" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VraiFaux(NbCar([Forms]![Fr_Recherche]![cmbCategorieRecherche] & "")>0,[Forms]![Fr_Recherche]![cmbCategorieRecherche], "*")

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2011
    Messages : 12
    Par défaut
    Bonjour

    J'ai réussi a créer une formule a mettre dans chacune de mes 3 Catégories pour filtrer....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ([Categorie_1] Like "*" & [Forms]![Fr_Recherche]![cmbCategorieRecherche] & "*" OR [Forms]![Fr_Recherche]![cmbCategorieRecherche] Is Null) OR ([Categorie_2] Like "*" & [Forms]![Fr_Recherche]![cmbCategorieRecherche] & "*" OR [Forms]![Fr_Recherche]![cmbCategorieRecherche] Is Null) OR ([Categorie_3] Like "*" & [Forms]![Fr_Recherche]![cmbCategorieRecherche] & "*" OR [Forms]![Fr_Recherche]![cmbCategorieRecherche] Is Null)


    MAIS....

    Comme j'ai aussi des Filtres pour Jour, Mois, Année & Description......ca fait beaucoup de COndition....

    Donc, Access ajoute a la requete PLUSIEURS Lignes 'OU'
    Au total, il y en a plus de 200......

    Ca fontionne NICKEL.......sauf, qu'a un moent donné (sans raison que je puisse identifié...), la requete devient trop complexe....j'ai un message d'erreur....
    Je dois alors ouvrir la Requete, effacer TOUTES les Lignes 'OU', et remettre les Filtres dans les 3 Catégories......

    Quelqu'un a une idée......

    Merci

Discussions similaires

  1. [AC-365] Filtre pour Formulaire
    Par Jeenan dans le forum Access
    Réponses: 2
    Dernier message: 31/01/2025, 17h18
  2. Filtre pour formulaire
    Par rockys dans le forum Access
    Réponses: 16
    Dernier message: 04/04/2016, 14h55
  3. [WB15]filtre anti spam pour formulaire
    Par celeborn56 dans le forum WebDev
    Réponses: 2
    Dernier message: 09/03/2010, 15h17
  4. Filtre pour ouverture de Formulaire
    Par jackyhilary dans le forum IHM
    Réponses: 2
    Dernier message: 05/02/2008, 18h52
  5. Filtre pour sous formulaire
    Par Flow56 dans le forum IHM
    Réponses: 1
    Dernier message: 10/05/2007, 16h41

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