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 :

Formulaire de recherche multifonction. [AC-2007]


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de BRUNO71
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2007
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 507
    Par défaut Formulaire de recherche multifonction.
    Bonjour à vous,

    J'ai besoin d'aide pour améliorer ce formulaire de recherche.
    Deux zones de listes et un sous formulaire.
    En faisant un choix dans la première zone de liste (catégorie) la deuxième affiche une sous catégorie et celle-ci affiche les articles correspondant.
    (Catégorie un)----(Sous cat)----(article)
    Cependant pour plus de souplesse je tente par l'intermédiaire de l'ajout d'une autre zone de liste (en jaune) de faire en sorte que :
    Si je note dans cette nouvelle zone directement un article et bien l'ensemble s'alimentent.
    Par exemple le mot….REGLE…. et hop...ce serait merveilleux....
    A la base mon choix doit il ce porter sur une zone de liste ou une zone de texte ?

    Code de la première liste :

    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
    Private Sub cboCategorie_Click()
        Dim l_strSql As String, l_strIn As String
        Dim l_intItem As Integer
        For l_intItem = 0 To Me.cboCategorie.ListCount - 1
            If Me.cboCategorie.Selected(l_intItem) = True Then
     
                l_strIn = l_strIn & Me.cboCategorie.Column(0, l_intItem) & ","
            End If
        Next
     
        If Len(l_strIn) > 0 Then
        l_strIn = Left(l_strIn, Len(l_strIn) - 1)
     
        l_strSql = "SELECT DISTINCT Tble_sous_catégories.Code_sous_catégories, Tble_sous_catégories.Sous_catégories " _
                     & "FROM Tble_sous_catégories INNER JOIN (Tble_catégories INNER JOIN Tble_articles ON (Tble_catégories.CodeCategorie = Tble_articles.CodeCategorie) " _
                     & "AND (Tble_catégories.CodeCategorie = Tble_articles.CodeCategorie)) ON (Tble_sous_catégories.Code_sous_catégories = Tble_articles.Code_sous_catégories) " _
                     & "AND (Tble_sous_catégories.Code_sous_catégories = Tble_articles.Code_sous_catégories) " _
                     & "WHERE Tble_catégories.CodeCategorie In (" & l_strIn & ")"
     
     
        Me.cbo_Sous_catégories.RowSourceType = "Table/Query"
        Me.cbo_Sous_catégories.RowSource = l_strSql
     
        Me.cbo_Sous_catégories.Requery
        End If
    End Sub
    Code de la deuxième liste :

    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
    Private Sub cbo_Sous_catégories_Click()
     
        Dim l_strIn As String
        Dim l_strSql As String
        Dim l_intItem As Integer
     
     
        For l_intItem = 0 To Me.cbo_Sous_catégories.ListCount - 1
            If Me.cbo_Sous_catégories.Selected(l_intItem) = True Then
     
                l_strIn = l_strIn & Me.cbo_Sous_catégories.Column(0, l_intItem) & ","
            End If
        Next
     
        If Len(l_strIn) = 0 Then
            l_strSql = ""
        Else
     
            l_strIn = Left(l_strIn, Len(l_strIn) - 1)
     
            l_strSql = "SELECT Tble_articles.Désignations, 'S' & [Références] AS Id_Ref, Tble_sous_catégories.Sous_catégories, Tble_catégories.Categorie, Tble_articles.Code_sous_catégories " _
            & "FROM Tble_catégories INNER JOIN (Tble_sous_catégories INNER JOIN (Tble_Références INNER JOIN Tble_articles ON (Tble_Références.Num_Réf = Tble_articles.Num_Réf) " _
            & "AND (Tble_Références.Num_Réf = Tble_articles.Num_Réf)) ON (Tble_sous_catégories.Code_sous_catégories = Tble_articles.Code_sous_catégories) " _
            & "AND (Tble_sous_catégories.Code_sous_catégories = Tble_articles.Code_sous_catégories)) ON (Tble_catégories.CodeCategorie = Tble_articles.CodeCategorie) " _
            & "AND (Tble_catégories.CodeCategorie = Tble_articles.CodeCategorie) WHERE Tble_sous_catégories.Code_sous_catégories In (" & l_strIn & ") ORDER BY [Désignations]"
        End If
     
        Me.SF_Désignations.Form.RecordSource = l_strSql
        Me.SF_Désignations.Requery
     
    End Sub
    Voici le fichier en exemple....ça pourra servir à quelqu'un....
    Déjà, est-ce possible de réaliser ce que je veux ?
    Le simple fait de taper le début d’un mot et bien l'ensemble ce met en action...
    A la rigueur est ce que j'ai fait le bon choix pour afficher mes articles avec deux zones de listes, est ce possible d'ajouter un autre élément en supplément pour plus de souplesse ?

    Merci beaucoup.

  2. #2
    Membre Expert Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 671
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 671
    Par défaut Formulaire de recherche multifonction
    Désolé, mais je ne comprend pas du tout ce que tu veux faire; ton programme fonctionne bien (il y a moyen de le simplifier), mais ta demande n'est pas claire.

  3. #3
    Membre éclairé Avatar de BRUNO71
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2007
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 507
    Par défaut
    Merci...
    Désolé....je vais changer de façon de faire....en fait je simplifie tout...

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/01/2009, 10h12
  2. [MySQL] Formulaire de recherche PHP + un script d recherche en HTML
    Par Dsphinx dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 09/11/2005, 20h44
  3. alléger un formulaire de recherche
    Par jarod71 dans le forum Langage
    Réponses: 4
    Dernier message: 28/10/2005, 12h11
  4. Réponses: 3
    Dernier message: 20/10/2005, 13h42
  5. Réponses: 5
    Dernier message: 18/10/2005, 15h09

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