ACCESS 2007 extraire des champs

Fermé
acos183 Messages postés 9 Date d'inscription jeudi 6 mars 2008 Statut Membre Dernière intervention 17 mars 2008 - 12 mars 2008 à 10:30
acos183 Messages postés 9 Date d'inscription jeudi 6 mars 2008 Statut Membre Dernière intervention 17 mars 2008 - 17 mars 2008 à 09:39
Bonjour,
Je découvre access et j'aimerais avoir votre avis/aide sur un point.
Je voudrais dans une requête aller chercher des descriptions de produits en fonction de la famille de produit citée dans cette première requête. Je m'explique :

Dans ma requête "devis" si mon family name = X, je veux extraire des données (par exemple tous les champs non vides) de ma requête X
Si mon family name = Y, je veux extraire des données de ma requête Y

Est ce que cela est possible? Comment faire?
J'ai pensé à une boucle test (IF [family name]="X" then ...) mais je ne vois pas quoi mettre après then

Est ce que je peux mettre la boucle dans le champ critère de ma requête?

Merci d'avance pour vos précieux conseils!
A voir également:

6 réponses

LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
12 mars 2008 à 12:14
Wow! Je crois que nous avons droit à un joyeux mélange des genres...

Non, tu ne peux pas mettre de boucle dans un critère, qui n'accepte que des expressions.

Explique toi mieux:
Je voudrais dans une requête aller chercher des descriptions de produits en fonction de la famille de produit citée dans cette première requête. Laquelle?

Dans ma requête "devis" si mon family name = X, je veux extraire des données (par exemple tous les champs non vides) de ma requête X Où se trouve FamilyName? Dans un formulaire, ou bien l'utilisateur le rentre quelque part???
Et tu veux extraire des données de ta requête Y pour en faire quoi, les mettre où???

Essaye déjà ce que je vais te dire, et reviens:

Tu crées une requête basée sur ta Table Produits (Tu n'en parles pas mais tu dois bien en avoir une)
Tu y mets plusieurs champs de ton choix, dont au moins FamilyName
Dans la zone Critère de FamilyName, tu mets "X" et tu exécutes. Tu auras directement les produits de famille X.
Ensuite, à la place de X, tu mets [Quelle famille?] et tu exécutes. Là; Acces va te demander Quelle famille? et le résultat de la requête dépendra de ta réponse.
C'est le principe du critère.
Quand tu auras fait ça, reformule ta question pour qu'on puisse y répondre.

Excuse si je donne des explications trop détaillées, mais comme ta question est archi-floue je préfère en donner trop que pas assez...
0
acos183 Messages postés 9 Date d'inscription jeudi 6 mars 2008 Statut Membre Dernière intervention 17 mars 2008
12 mars 2008 à 13:55
Merci LatelyGeek de venir encore une fois à la rescousse...
alors je reprends

J'ai ma requête (dans laquelle j'ai rajouté, comme tu l'as suggéré, les champs de ma product list)
Dans cette même requête je veux avoir un champ DESCRIPTION et je voudrais que celui ci se remplisse automatiquement à partir d'autres champs (que j'ai inséré dans ma requête et qui viennent de ma product list)

Si la famille est par exemple VOITURE je veux que ma description soit remplies avec certains champs qui caractérisent la famille VOITURE (type, nombre de places assises, carburant) et si la famille est MOTO je veux retrouver dans ma description les données propres à la famille MOTO (type, cylindrée, puissance)

Je pense à une boucle (vba obligatoire?) et comment préciser à mon champ DESCRIPTION qu'il doit lancer une macro pour générer automatiquement ma description en fonction de la famille de produit qui est renseigné dans la requête?

J'espère avoir mieux précisé ma demande?!
0
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
12 mars 2008 à 16:58
Ma signature t'irait décidément comme un gant!!!!

Je suppose que les descriptions sont dans une table SpécificationsFamille ou qqchose ds ce goût là.
Et que bien sûr les deux tables sont liées entre elles par le champ "FamilyName"...

Tu mets les deux tables dans la requête et quand tu choisiras une famille, la description s'affichera TOUTE SEULE!!!!

Je sens bien ta déception, tu voulais une boucle VBa... T'inquiète, t'arriveras bien à en caser une quelque part dans ta base!!!
0
acos183 Messages postés 9 Date d'inscription jeudi 6 mars 2008 Statut Membre Dernière intervention 17 mars 2008
12 mars 2008 à 17:52
En fait les descriptions ne sont pas dans une autre table, elles sont , si on peut dire, dans ma table product list
Mais les descriptions ne sont pas "en dur" dans un champ mémo...elles devront être générées à partir de plusieurs champs de cette même table et en fonction de ma famille les champs que je veux voir apparaître ne seront pas les même

Je cherche à ce que le "filtre" s'applique automatiquement en fonction du family name qui sera dans ma table
0
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
12 mars 2008 à 18:15
En fait les descriptions ne sont pas dans une autre table, elles sont , si on peut dire, dans ma table product list

Là, je crois que je déclare forfait...
0
acos183 Messages postés 9 Date d'inscription jeudi 6 mars 2008 Statut Membre Dernière intervention 17 mars 2008
13 mars 2008 à 08:51
En fait prenons l'exemple d'une adresse. Dans ma table j'ai un champ "nom","prénom","numéro","rue","ville","code postal" et "pays"
En fonction du pays je veux je veux générer une étiquette dont la présentation est propre à chaque pays :

Pour la france,
Anne Onyme [Prénom][Nom]
10, rue de blabla [numéro]"," "rue" [rue]
59000 Lille [Code postal] "" [ville]
France [Pays]

Pour l'angleterre
Anne Onyme [prénom] [nom]
10 , road blabla [numéro] "," "road" [rue]
City Zip code [ville][code postal]
Country [pays]

Voilà en gros on se base sur les même champs dans l'exemple mais l'esprit est là... la mise en forme change selon le pays mais je veux que mon champ adresse soit généré automatiquement à partir de différents champs de ma table
0

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

Posez votre question
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
14 mars 2008 à 00:24
Combien y a-t-il de familles différentes???

S'il n'y en a que deux, comme France et Angleterre, on peut envisager un VraiFaux, sinon il vaut mieux à mon sens stocker les différents éléments dans une table. Genre:

Pays Lib1 Lib2
France Rue Pays
Angleterre Road Country
...

Et créer un lien sur le pays entre les deux tables, puis mettre les deux tables dans la requête.

La syntaxe serait:

[Nom] &" "&'Prénom]
[Numéro]&", "&(Lib1]&" "&[Rue]
[Code postal]&" "&[Ville]
[Lib3]&" "&(Pays]


Sinon juste un VraiFaux([Pays]="France";"Rue";"Road")

Ca répond à ta question???

0
acos183 Messages postés 9 Date d'inscription jeudi 6 mars 2008 Statut Membre Dernière intervention 17 mars 2008
17 mars 2008 à 09:39
Il y a beaucoup de familles (une vingtaine mini) mais je devrais avoir un support d'ici peu logiquement, je te remercie d'avoir essayé de m'aider LatelyGeek
0