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 :

Procédure filtrer case à cocher dans un formulaire


Sujet :

VBA Access

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Procédure filtrer case à cocher dans un formulaire
    Bonjour à tous,

    je débute dans la programmation visual basic (actuellement sur access).
    Je travaille actuellement sur la création de formulaire mais sur certain il faut ajouter des contrôles par exemple case à cocher interne ou externe. Mais en mode création du formulaire et la propriété sur la case à cocher puis sur l'onglet Evenement > sur clic > il faut écrire du code ([Procédure événementielle]) pour que ça fonctionne

    Au final, il faut qu'à chaque fois je coche sur interne ou externe, le tri fonctionne sur un champ du formulaire dans lequel je travaille (champs : [TY_PERSONNE]) comporte 2 états : INT (indique que la personne est interne) et EXT (indique que la perspnne est externe)

    J'ai écris le code ci-dessous et après plusieurs essai ça ne fonctionne pas du tout et je ne sais pas quoi faire d'autre


    ''' pour la case à cocher pour les externes, le code :


    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
    Private Sub Filtre_Personne_Externe_Click()
     
     
        If (Me.Filter = "TY_PERSONNE = EXT") Then
     
            Me.Filtre_Personne_Externe = True
            Me.FilterOn = True
     
     
        Else
     
            Me.Filter = ""
     
     
        End If
     
     
    End Sub 
     
     
    ''' pour la case à cocher pour les internes :
     
     
    Private Sub Filtre_Personne_Interne_Click()
     
     
        If (Me.Filter = "TY_PERSONNE = INT") Then
     
            Me.Filtre_Personne_INterne = True
            Me.FilterOn = True
     
     
        Else
     
            Me.Filter = ""
     
     
        End If
     
     
    End Sub

    un expert en visual basic peut-il détecter mon erreur ?
    pourriez-vous m'aider svp pour que j'avance.

    merci d'avance!

  2. #2
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Autrement dit, quel est le code vba pour filtrer un champ dans un formulaire ?
    le code qu'on écrit dans procédure événementielle sur clic (case à cocher)
    SVP un coup de pouce; ou une indication ou un lien ?

    merci

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2008
    Messages : 97
    Points : 143
    Points
    143
    Par défaut
    Bonjour,

    Le truc c'est que je ne vois pas bien où tu veux mettre tes cases à cocher et quel formulaire tu veux filtrer...

    Mais en tout cas je vais commenter ton code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        If (Me.Filter = "TY_PERSONNE = EXT") Then 'Tu vérifie si le filtre courant = "TY_PERSONNE = EXT", impossible car tu n'assignes jamais le filtre
            Me.Filtre_Personne_Externe = True 'Tu souhaites cocher la case à cocher (inutile, c'est access qui le fait)
            Me.FilterOn = True 'Active le filtre dans lequel tu n'as rien mis
        Else
            Me.Filter = "" 'Ne met rien dans le filtre, c'est ce qui se passe toujours
        End If
    Essaye donc peut-être ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Filtre_Personne_Externe_Click()
        If CBool(Filtre_Personne_Externe.value) Then
            Filter = "TY_PERSONNE = EXT"
         Else
            Filter = ""
        End If
        FilterOn = True
    End Sub
    Mais question: que se passe t'il si on coche tes deux cases à cocher? Ne vaut il pas mieux utiliser un groupe d'options avec deux boutons radio?

  4. #4
    Membre éprouvé
    Avatar de keita
    Homme Profil pro
    Inscrit en
    Novembre 2002
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2002
    Messages : 881
    Points : 1 121
    Points
    1 121
    Par défaut
    bonjour
    Au final, il faut qu'à chaque fois je coche sur interne ou externe, le tri fonctionne sur un champ du formulaire...
    A mon humble avis tu ne devrais pas avoir 2 cases à cocher(int et ext) mais plutôt un seul dont l'état cocher devrait permettre de sélectionner les internes par ex et l'état non-cocher les externes.cette case a cocher devra se trouver dans un formulaire principal et les données dans un sous formulaire.

    @+

Discussions similaires

  1. Case à cocher dans sous formulaire
    Par LyLy_91 dans le forum IHM
    Réponses: 6
    Dernier message: 09/07/2008, 15h25
  2. case à cocher dans sous formulaire
    Par Syrrus dans le forum IHM
    Réponses: 2
    Dernier message: 31/10/2007, 11h27
  3. case à cocher dans un formulaire
    Par 4rn0_o dans le forum IHM
    Réponses: 2
    Dernier message: 30/08/2007, 08h16
  4. Case à cocher dans un formulaire access
    Par romulus34 dans le forum IHM
    Réponses: 10
    Dernier message: 23/01/2007, 15h42
  5. cases à cocher dans un formulaire
    Par juliette2 dans le forum Access
    Réponses: 4
    Dernier message: 06/04/2006, 22h27

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