[Access] help me

Fire -  
blux Messages postés 27910 Date d'inscription   Statut Modérateur Dernière intervention   -
bonjour

voilà je suis bloqué sur ma bd. j'ai un formulaire de recherche qui cherche ds une seule colonne de ma table. Comment faire pr qu'il cherche ds plusieurs colonnes??

Le code:

rivate Sub RefreshQuery()
Dim SQL As String
Dim SQLWhere As String

SQL = "SELECT N°, Grade, Nom, Prénom, [Pantalon F1], [Pantalon F12] FROM Inventaire Where Inventaire!N°<>0"

SQL = SQL & "And Inventaire![Pantalon F1] like '*" & Me.TxtAgent & "*'"

SQLWhere = Trim(Right(SQL, Len(SQL) - InStr(SQL, "Where") - Len("Where") + 1))

SQL = SQL & ";"

Me.LblStat.Caption = DCount("*", "Inventaire", SQLWhere) & " / " & DCount("*", "Inventaire")
Me.LstAgent.RowSource = SQL
Me.LstAgent.Requery

End Sub


Je voudrai kil cherche aussi dans [Pantalon F12]

6 réponses

blux Messages postés 27910 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Salut,

il suffit de compléter la requête avec un OR des deux conditions :

and (inventaire![PantalonF1] like .... OR inventaire![PantalonF12] like...)
0
Jacques
 
Bonjour,

Une question en passant. Ne serait-il pas possible d'optimiser la table ?

Les champs 'Pantalon F1' et 'Pantalon F12' ne pourrait-ils pas être être réunis dans un seul et même ?
A condition que les données soient homogènes, cela va de soi.

La science ne fait que trouver ce qui existe depuis toujours.
Hubert REEVES.
0
blux Messages postés 27910 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Dans l'absolu, il devrait y avoir une table pantalon avec le type de pantalon (F1 et F12) reliée à la table inventaire.

Mais ce cas est à présenter à l'examen devant un intégriste des bases de données relationnelles et des formes normales !

Dans la vraie vie, c'est sûrement intéressant et pas trop pénalisant de les avoir en 2 colonnes...

Mais peut-être qu'inventaire est une requête avec juxtaposition de deux colonnes prises de la même table, qui sait ?
0
Jacques
 
Bonjour Blux,

Le fun fait partie de la vraie vie (j'aime bien l'expression) , et je partage ton opinion sans réserve aucune.

Toutefois, faute de certitudes, la volonté s'impose d'envisager des hypothèses alternatives.

Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Fire
 
alors j'ai essayé la methode OR mais rien ne marche et ce n'est pas faute d'avoir essayé. Si le coeur vs en dit de venir m'aider: newbeedrastik@hotmail.com
0
blux Messages postés 27910 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Donne le code qui ne marche pas, on te dira pourquoi :-)
0
Jean-Jacques
 
Bonjour,
L'aide en ligne de Access propose une solution UNION. A toi de voir si elle est adaptable à ton cas ....

L'exemple suivant récupère les noms et les villes de tous les clients et fournisseurs au Brésil :

SELECT Société, Ville FROM Fournisseurs
WHERE Pays = 'Brésil'
UNION SELECT Société, Ville FROM Clients
WHERE Pays = 'Brésil' ;L'exemple suivant récupère les noms et les villes de tous les clients et fournisseurs situés au Brésil :

SELECT Société, Ville, 'Fournisseur' AS Source
FROM Fournisseurs
WHERE Pays = 'Brésil'
UNION SELECT Société, Ville, 'Client'
FROM Clients
WHERE Pays = 'Brésil'
ORDER BY Ville, Source ;L'exemple suivant récupère les noms et numéros de tous les fournisseurs et clients. Cette union suppose un même nombre de colonnes dans chaque table.

TABLE Clients UNION TABLE Fournisseurs ;

Tiens moi au courant STP, ça m'intéresse
Cordialement
La science ne fait que trouver ce qui existe depuis toujours.
Hubert REEVES.
0