Access 2010 [Résolu]

Messages postés
5
Date d'inscription
jeudi 4 novembre 2010
Dernière intervention
16 février 2011
- 26 nov. 2010 à 09:25 - Dernière réponse :
Messages postés
116
Date d'inscription
jeudi 14 décembre 2006
Dernière intervention
29 août 2013
- 27 févr. 2011 à 16:25
bonjour,
je suis debutant, mon probleme a resoudre est le suivant :
j'ai deux tables
code article
ref
designation
et la deuxieme est une table de stock avec sur chaque ligne le stock dans chaque couleur
code article
quantite
couleur
je souhaiterais faire un etat avec une requete qui me donnerais
code article
quantite par couleur:
pour schematiser
au depart 1er table:

bahut
ref1032

deuxieme table :
bahut
ref1032
bleu
3

bahut
ref1032
quantite bleu 3
quantite rouge 4
quantite vert 5
enfin je souhaiterais avoir dans la table de resultat une seul ligne par ref mais avec des champs supplementaire indiquant les quantites par couleur, au lieu de plusieurs lignes .

j'espere que cela a ete clair

merci pour votre aide

gilbert
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
Messages postés
116
Date d'inscription
jeudi 14 décembre 2006
Dernière intervention
29 août 2013
- 2 déc. 2010 à 16:14
3
Merci
Merci d'accepter la réponse et d'indiquer que c'est résolu

Merci houtas 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de houtas
Messages postés
116
Date d'inscription
jeudi 14 décembre 2006
Dernière intervention
29 août 2013
- 26 nov. 2010 à 10:09
0
Merci
Salut
Tu va faire des sous requête sur ta table2 avec des filtres chaque fois en fonction de la colonne.
Colonne Bleu-->requête sur la table 2 avec filtre sur bleu
il faudra autant de requête que tu de colonnes (couleurs)
ensuite tu fais une requete sur la table 1 et toutes les requêtes crées en utilisant pour jointure tes deux premiers champs (attention ces jointures devront être ouvertes pour inclure tous les résultats de la table1 et les résultats correspondant quand ils existent pour les autres requêtes)

J'espère avoir été assez clair, sinon n'hésite pas à poser des questions.
Commenter la réponse de houtas
Messages postés
5
Date d'inscription
jeudi 4 novembre 2010
Dernière intervention
16 février 2011
- 26 nov. 2010 à 19:47
0
Merci
merci pour la reponse je vais m'y attacher, je pense que j'aurais d'autres questions....
Commenter la réponse de anofer
Messages postés
5
Date d'inscription
jeudi 4 novembre 2010
Dernière intervention
16 février 2011
- 26 nov. 2010 à 21:27
0
Merci
table 1
ref codearticle designation

ba123 123 3portes
ba124 124 2portes



table 2
ref codearticle designation couleur qté

ba123 123 3portes gris 1
ba123 123 3portes vert 3
ba124 124 2portes bleu 1
ba124 124 2portes vert 0




ce que je veux obtenir

ref codearticle designation gris vert bleu

ba123 123 3portes 1 3 0
ba124 124 2portes 0 0 1

c'est peut etre plus clair comme ca, je n'ai pas compris la solution houtas merci de me reexpliqué
gilbert
Commenter la réponse de anofer
Messages postés
116
Date d'inscription
jeudi 14 décembre 2006
Dernière intervention
29 août 2013
- 30 nov. 2010 à 12:27
0
Merci
Bonjour,

Tu dois créer ta Table1 et Table2 exactement comme tu le décris, ensuite tu crée une requête, tu passe en mode SQL, tu copie le SQL ci-joint, tu exécute la requête et tu retrouve ton résultat attendu.
Passe en mode création les formules utilisés pour les sommes par colonnes, tu pourra t'adapter a ton cas.

SELECT Table1.ref, Table1.codearticle, Table1.designation, Sum(IIf([Table2]![couleur]="gris",[Table2]![qte],0)) AS gris, Sum(IIf([Table2]![couleur]="vert",[Table2]![qte],0)) AS vert, Sum(IIf([Table2]![couleur]="bleu",[Table2]![qte],0)) AS bleu
FROM Table1 LEFT JOIN Table2 ON (Table1.codearticle Table2.codearticle) AND (Table1.ref Table2.ref)
GROUP BY Table1.ref, Table1.codearticle, Table1.designation;
Commenter la réponse de houtas
Messages postés
5
Date d'inscription
jeudi 4 novembre 2010
Dernière intervention
16 février 2011
- 2 déc. 2010 à 09:26
0
Merci
merci houtas,
cela marche parfaitement.
a+
Commenter la réponse de anofer
Messages postés
5
Date d'inscription
jeudi 4 novembre 2010
Dernière intervention
16 février 2011
- 16 févr. 2011 à 19:25
0
Merci
Bonjour,

je souhaiterais obtenir un etat comme ceci

code article variante de couleur qte
sachant qu'un article peut posseder plusieurs variante de couleur

je dispose d'une table article ou il y a que le code article
et d'une table stock ou le code article est repeté plusieurs fois en fonction de sa variante de couleur.
en utilisant la methode precedente je suis obligé de marquer dans mon etat toute les variantes de couleur possible et de les connaitre auparavant.
Je souhaiterais que la table de resultat de ma requete puisse lire la variante de couleur et creer une colonne portant ce nom avec la qte.
il faudrait utiliser des variables mais je n sais pas le faire.

comme precedement il faut un seul code article mais toute les variante de couleur et la qte sur la meme ligne.

j'espere que j'ai ete assez clair
merci pour votre aide
Commenter la réponse de anofer
Messages postés
116
Date d'inscription
jeudi 14 décembre 2006
Dernière intervention
29 août 2013
- 27 févr. 2011 à 16:25
0
Merci
Ou bien un simple tableau croisée dynamique
avec cette requête
SELECT Table1.ref, Table1.codearticle, Table1.designation, Table2.couleur, Table2.qte
FROM Table1 INNER JOIN Table2 ON (Table1.designation Table2.designation) AND (Table1.codearticle Table2.codearticle) AND (Table1.ref = Table2.ref);

tu passe en mode tableau croisée dynamique, tu met ref, codearticle, désignation en ligne, la couleur en colonne et la qté en mesure et tu aura ton tableau avec les colonnes couleur en dynamique
Commenter la réponse de houtas

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.