Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/07/2011, 18h26   #1
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
Par défaut Appliquer filtre dans une liste déroulante selon variable

Bonjour voici mon problème je désire effectué un filtre dans une liste déroulante qui comporte plusieur choix possible. Exemple la liste comporte le nom des secouristes qui sont affecté sur une intervention. Donc lors de leurs ouverture de session je veux que ceux-ci ne peuvent voir seulement leurs affectation voici un bout de code que j'ai écrit mais ca ne fonctionne pas la fenetre ouvre mais sans aucune information donc il semble y avoir un problème lors de l'application de se dit filtre a la liste. Merci de votre aide

P.S. se bout de code est dans un module il permet l'affectation de plusieurs bouton dans un autre formulaire

Code :
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
'*****************************************
'Bouton Form User
'*****************************************
 
Sub BoutonFormUser(ByVal itemnumber As Long)
Dim strnomForm As String
Dim acces_level As Integer
Dim NomFiltre As String
On Error GoTo err_BoutonFormUser
 
strnomForm = Nz(DLookup("Argument", "Switchboarditems", "itemnumber=" & itemnumber), "")
    If strnomForm = "" Then
        MsgBox "Il n'y a aucune Option Disponible!", vbInformation, "Option non Valide!"
    Exit Sub
 
    Else
 
 
    acces_level = Nz(DLookup("niveau_acces", "tbl_secouriste", "IDsecouriste=Forms!hiddenform!IDsecouristevar"), 0)
    If acces_level < 3 Then
        DoCmd.Close
        DoCmd.OpenForm [strnomForm], acNormal
    Exit Sub
 
    Else
       NomFiltre = Forms!hiddenform!IDsecouristevar
       DoCmd.Close
       DoCmd.OpenForm [strnomForm], acNormal, , "liste des secouristes" = NomFiltre 'Mon problème semble être ici !!
    End If
 End If
 
exit_BoutonFormUser:
Exit Sub
err_BoutonFormUser:
MsgBox Err.Description
Resume exit_BoutonFormUser
End Sub
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/07/2011, 08h49   #2
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 085
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 085
Points : 11 622
Points : 11 622
Bonjour,

C'est tout le problème d'utiliser des espaces dans les noms des contrôles !

Il faut savoir mettre les crochets où il faut.

Code :
..."[liste des secouristes]" = NomFiltre
Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/07/2011, 01h54   #3
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
Franchement je suis d'accord avec toi et je suis en train de corriger le problème et probablement que celuil-ci est un des derniers. mais je croyait que c'étais plus compliquer de trier une liste déroulante ... je test et je te revient avec le résultat merci beaucoup
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/07/2011, 20h15   #4
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
Finalement après test même avec les accolade sa ne fonctionne pas aurait tu une autre solution ?
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2011, 09h28   #5
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 085
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 085
Points : 11 622
Points : 11 622
Oups ! (Ciboire ! comme on dit chez toi)

Avec les crochets ne n'avais pas vu le =.

Code :
 "[liste des secouristes]=" & NomFiltre
Le filtre est comme le where, présent d'ailleurs dans cette commande, il doit être compatible avec un where SQL.

Lorsque l'on envoi une telle expression elle doit être lisible comme une condition WHERE, avec VBA on fait de la concaténation pour créer l'expression.

Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/07/2011, 14h12   #6
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
Bonjour loufab encore merci de ton aide et oui ciboire lolll malheureusement sa ne fonctionne toujours pas access me dit que je peut pas utiliser le where et having voici un Screenshots,

j'espère trouver une soluce ....
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/07/2011, 14h31   #7
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 085
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 085
Points : 11 622
Points : 11 622
Gulp effectivement avec une requete de regroupement tu ne peux pas.

Déplace-le sur l'option Filtre de la commande.

C'est l'option précédente de openform.

Code :
docmd.openform nom,view,filtre,where
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2011, 00h36   #8
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
Re-Bonjour loufab oufff 1 virgule ... mais sa commence à devenir passionnant se problème. Ca fonctionne excepté que le filtre ne s'applique pas. Le formulaire s'ouvre correctement sans message d'erreur mais affiche tous les enregistrements. Peut-être aurait tu une autre piste à la place d'affecter le filtre sur une liste déroulante.
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2011, 08h46   #9
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 085
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 085
Points : 11 622
Points : 11 622
Peux-tu poster le contenu de NomFiltre au moment de l'execution ?
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2011, 15h20   #10
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
bonjour , j'ai tester justemement a savoir si il y avait bien une variable affecté
et c.est le cas voici mon screenshot ...
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2011, 15h30   #11
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 085
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 085
Points : 11 622
Points : 11 622
Je comprends mieux ton problème.

Cette syntaxe :
Code :
"[liste des secouristes]=" & NomFiltre
C'est pour du numérique alors que ton critère est de type texte incomplet.

Voici comment tu dois le coder.

Code :
"[liste des secouristes] LIKE ""*" & NomFiltre & ""*"
Regarde mon tuto sur l'opérateur Like

http://loufab.developpez.com/tutorie...operateurlike/

pour en savoir plus sur cet opérateur incontournable.

Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2011, 15h48   #12
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
Une lumiere au bout du tunnel ... quand tu apprend tu vient qu'à te perdre ... merci je test tous ca et je te donne le compte rendu merci énormément .. question à part j'ai cru remarqué sur le site qu'il y a eu certaine question comment créer un code d'activation pour une base ... j'ai ai créer un et il fonctionne excepté qu'il n'est pas crypté mais ca ajoute un semblant de professionaliste comment je pourrait le poster .... du meme coup peut-être tu pourrait me mettre sur une piste de comment créer une routine pour générer se dit code d'activation
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2011, 16h08   #13
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
Finalement j'ai fait quelques test et ca me donne en bout de compte incompaibilité de type ....
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2011, 20h06   #14
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 085
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 085
Points : 11 622
Points : 11 622
Je pense que pour ton code d'activation tu auras beaucoup de retours des lecteurs. En effet c'est un sujet souvent abordé.

Concernant ton problème c'est étrange.

Ton champ est bien un champ texte ?

Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 01h08   #15
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 176
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 176
Points : 192
Points : 192
Salut oui ces bien un champ texte ... je comprend pas moi non plus

plus précisément la liste fait une requête qui est la suivante :

Code :
SELECT tbl_secouriste.IDsecouriste, tbl_secouriste.Nom_secouriste, tbl_secouriste.alias_secouriste FROM tbl_secouriste ORDER BY tbl_secouriste.IDsecouriste;
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 09h01   #16
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 085
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 085
Points : 11 622
Points : 11 622
Tu éventuellement me poster ta base si tu souhaites que je regarde.

Tu peux me contacter en MP si tu ne veux pas la poster sur le forum.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h26.


 
 
 
 
Partenaires

Hébergement Web