Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
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 24/02/2011, 13h09   #1
Invité de passage
 
Arthur
Inscription : février 2011
Messages : 4
Détails du profil
Informations personnelles :
Nom : Arthur

Informations forums :
Inscription : février 2011
Messages : 4
Points : 0
Points : 0
Par défaut Problème d'expression générée à partir d'une variable

Bonjour,

Je rencontre un problème dans la création d'une requête dont l'un des critères est défini par une expression elle même définie en fonction d'une variable de choix.

Je m'explique donc, mon application sert à l'indexation de diverses documents, eux-mêmes classés par métier.

Lorsque je souhaite rechercher un document, j'utilise un ChampTexte, et de manière optionelle, des cases à cocher qui correspondent aux différents métiers.

Voilà mon code lorsque je clique sur le bouton de recherche :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub CmdRecherche_Click()
Dim Metier As String
Select Case Me.ChxMetier.Value
 
Case 1 'GLS est choisi
ChxMetier = "GLS"
Case 2 'GIGLA est choisi
ChxMetier = "GIGLA"
Case Else 'Si rien n'est choisi
ChxMetier = """GLS"" Ou ""GIGLA"""
End Select
MsgBox ChxMetier
DoCmd.Requery "Resultat"
 
End Sub
L'idée étant, que si GLS est choisi, les documents classés dans ce métier là seront sélectionnés, pareil pour GIGLA, en revanche si aucun choix n'est fait, je souhaite voir tous les documents.

J'ai mis un MsgBox pour m'assurer que les guillemets étaient bien pris dans ma variable.

J'ai défini ma requête de recherche et le critère qui correspond au métier est = [Formulaires]![F_Recherche]![ChxMetier]

Cela marche pour GLS, pour GIGLA,mais cela ne donne rien lorsqu'aucun choix n'est fait. Pourtant si je teste la formule manuellement, c'est à dire en mettant comme critère : "GLS" ou "GIGLA", cela fonctionne très bien.

Merci pour vos retours.
SweloMyli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2011, 13h22   #2
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 205
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 205
Points : 5 258
Points : 5 258
Salut,

Pour tous les cas possibles tu peux utiliser le signe "*" avec 1 like dans le critère.
et dans la requête :

Code sql :
champ LIKE [Formulaires]![F_Recherche]![ChxMetier]

Par contre ton champ ChxMetier dans ton form contient bien du texte ?
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2011, 16h23   #3
Invité de passage
 
Arthur
Inscription : février 2011
Messages : 4
Détails du profil
Informations personnelles :
Nom : Arthur

Informations forums :
Inscription : février 2011
Messages : 4
Points : 0
Points : 0
Parfait, en effet c'était tout bête - ce qui me donnait encore plus l'impression de boucler.

En effet mon ChxMetier, est bien défini comme étant textuel.

Merci beaucoup !
SweloMyli est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h35.


 
 
 
 
Partenaires

Hébergement Web