Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Champ d'une table comme critère d'une requête

3 réponses
Avatar
Jac
Bonjour à tous,

dans une base de données "dorsale", j'ai deux tables identiques "A" et "B"
avec un seul enregistrement chacune et, selon le cas, c'est l'une ou l'autre
qui est "attachée" à ma base de donnée frontale.

Un champ texte nommé "Selection" contient le critère de sélection :
>999 dans la table "A" et
<1000 ou >1999 dans la table "B".
J'aimerais pouvoir me servir de ces valeurs comme critère de sélection dans
une requête qui s'appuie sur une autre table "C".

Il n'y a aucun champ commun aux deux tables de la requête, mais comme l'une
n'a qu'un seul enregistrement, sans faire de liaison, j'arrive à afficher ce
critère sur chaque ligne de la requête.

Mais ce que je cherche à faire, c'est utiliser le critère du champ
"Selection" comme filtre pour la requête.

Est-ce possible ? Comment ?

Merci d'avance à qui me mettra sur la voie.

Jac

3 réponses

Avatar
3stone
Salut,

"Jac"
| dans une base de données "dorsale", j'ai deux tables identiques "A" et "B"
| avec un seul enregistrement chacune et, selon le cas, c'est l'une ou l'autre
| qui est "attachée" à ma base de donnée frontale.


Dans ce cas, pourquoi n'as tu pas une table avec 2 enregistrements ?



| Un champ texte nommé "Selection" contient le critère de sélection :
| >999 dans la table "A" et
| <1000 ou >1999 dans la table "B".
| J'aimerais pouvoir me servir de ces valeurs comme critère de sélection dans
| une requête qui s'appuie sur une autre table "C".
|
| Il n'y a aucun champ commun aux deux tables de la requête, mais comme l'une
| n'a qu'un seul enregistrement, sans faire de liaison, j'arrive à afficher ce
| critère sur chaque ligne de la requête.
|
| Mais ce que je cherche à faire, c'est utiliser le critère du champ
| "Selection" comme filtre pour la requête.
|
| Est-ce possible ? Comment ?


Peut-être pas impossible, mais, est-ce une bonne solution ?

Une table et 2 enregistrements permettrait de supprimer ce jonglage,
quitte à ajouter un champ pour permettre la sélection de la "ligne".

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Avatar
Jac
Bon, alors je réorganise ma question qui devient :

comment faire pour utiliser les critères qui sont dans une table
(enregistrement 1 = ">999" et enregistrement 2 = "<1000 ou >1999")
pour les utiliser comme filtre dans une requête qui s'appuie sur une autre
table.

Je précise qu'il n'y a aucun champ commun entre la table des
critères et la table des données à filtrer.

Donc je ne peux pas faire cette sélection par les relations (sauf à tout
modifier si nécessaire...).

Et de toute façon, je ne sais pas comment choisir entre la valeur de
l'enregistrement 1 ou de l'enregistrement 2...


"3stone" a écrit dans le message de news:
Salut,

"Jac"
| dans une base de données "dorsale", j'ai deux tables identiques "A" et
"B"
| avec un seul enregistrement chacune et, selon le cas, c'est l'une ou
l'autre
| qui est "attachée" à ma base de donnée frontale.

Dans ce cas, pourquoi n'as tu pas une table avec 2 enregistrements ?

| Un champ texte nommé "Selection" contient le critère de sélection :
| >999 dans la table "A" et
| <1000 ou >1999 dans la table "B".
| J'aimerais pouvoir me servir de ces valeurs comme critère de sélection
| dans une requête qui s'appuie sur une autre table "C".
|
| Il n'y a aucun champ commun aux deux tables de la requête, mais comme
| l'une n'a qu'un seul enregistrement, sans faire de liaison, j'arrive à
afficher
| ce critère sur chaque ligne de la requête.
|
| Mais ce que je cherche à faire, c'est utiliser le critère du champ
| "Selection" comme filtre pour la requête.
|
| Est-ce possible ? Comment ?


Peut-être pas impossible, mais, est-ce une bonne solution ?

Une table et 2 enregistrements permettrait de supprimer ce jonglage,
quitte à ajouter un champ pour permettre la sélection de la "ligne".

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)



Avatar
3stone
Salut,

"Jac"
| comment faire pour utiliser les critères qui sont dans une table
| (enregistrement 1 = ">999" et enregistrement 2 = "<1000 ou >1999")
| pour les utiliser comme filtre dans une requête qui s'appuie sur une autre
| table.
|
| Je précise qu'il n'y a aucun champ commun entre la table des
| critères et la table des données à filtrer.
|
| Donc je ne peux pas faire cette sélection par les relations (sauf à tout
| modifier si nécessaire...).
|
| Et de toute façon, je ne sais pas comment choisir entre la valeur de
| l'enregistrement 1 ou de l'enregistrement 2...


si tu souhaites utiliser le contenu du champ d'une table comme critère,
utilise la fonction de domaine Dlookup()

= Dlookup("NomChamp";"NomTable")

si plus d'un enregistrement :

= Dlookup("NomChamp";"NomTable";"champ='xxx'") si texte
= Dlookup("NomChamp";"NomTable";"champ6") si numérique


Si le contenu du champ est du style ">999" comme tu semble le dire...
j'ai bien peur que cela ne fontionne pas - mais à vérifier ;-)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)