Affichage spécial sur la DataGrid

Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   -  
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je travaille sur VB6 avec Acces. Dans ma table ( BD ), j'ai
- champ appelé NomComplet
- champ appelé Rubrique
- champ appelé Nbre
- champ appelé Montant
Je cherche à faire afficher sur ma DataGrid le contenu de ces trois champs sans répétion, avec le total du champ Montant et le total du champ Nbre pour chaque NomComplet, à l'exception du contenu du champ Nbre lorsque le champ Rubrique est différent au filtre "H.N"

Merci pour votre aide
A voir également:

1 réponse

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, tu as cessé d'être clair au moment où tu donnes une liste de 4 champs puis tu écris "ces trois champs". qu'entends-tu par "est différent au filtre "H.N""?
à tout hasard:
select NomComplet, sum(Montant) as Montants, sum(iif(Rubrique="H.N", 0, Nbre)) as Nombres 
from BD;
0
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
 
Bonjour

Merci pour votre attention.
En réponse à votre question (qu'entends-tu par "est différent au filtre "H.N)
Je me permets de vous expliquer plus.
Lores des entegistrement des opérations, il se peut qu'une seule personne peut être entegistrée pour plus d"une Rubrique ( H.N, H.SUP, H.Recup ..)c'est à dire tant de lignes que le nombre des rubriques saisies pour cette personne
Mais à laffichage je veux avoir une seule ligne pour cette personne, avec le nombre des H.N seulement et le total des montants de toutes les rubriques enregistrées pour cette personne
0
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
 
Bonjour

J'ai fais ce que vous m'aviez proposè , mais l'application me renvoie un message d'erreur
( Erreur d'execution
Vous avez essayer d'executer une requête ne comprenant pas l'expression specifièe 'NomComplet' comme une partie de la fonction d'agregat)
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention  
 
alors, sans doute:
select NomComplet, sum(Montant) as Montants, sum(iif(Rubrique="H.N", Nbre, 0)) as Nombres 
from BD;
0
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
 
Rebonjour

Toujours rien.
Peut être que je n'ai bien expliquer mon cas. Voilà je vous donne l'exemple d'une seule personne et pour une seule journée

Dans ma BD il y ' a 3 lignes avec le même nom

La première ligne
Champ ( Nom ) = Ouvrier x
Champ ( Rubrique ) = H.N
Champ ( Nbre ) = 8
Champ ( Montant ) = 70

La deuxième ligne
Champ ( Nom ) = Ouvrier x
Champ ( Rubrique ) = H.SUP
Champ ( Nbre ) = 2
Champ ( Montant ) = 10,94

Je cherche à faire afficher sur ma DataGrid une seule ligne avec

Champ ( Nom ) = Ouvrier X
Champ (Rubrique ) = H.N
Champ ( Nbre) = 8
Champ ( Montant ) = 80,94

Merci pour votre bonne patience
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention  
 
select NomComplet, "H.N" as Rubrique, sum(iif(Rubrique="H.N", Nbre, 0)) as Nbre, 
sum(Montant) as Montant 
from BD group by NomComplet;
0