Comptage par groupe de valeur
dna.factory
Messages postés
29318
Date d'inscription
Statut
Modérateur
Dernière intervention
-
dna.factory Messages postés 29318 Date d'inscription Statut Modérateur Dernière intervention -
dna.factory Messages postés 29318 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
J'ai un tableau comprenant un certain nombre de valeurs, et je voudrais faire l'équivalent d'un count(*) group by valeur (pour ceux qui connaissent le sql)
en gros :
origine :
1
1
1
2
2
3
4
4
5
7
(les champs sont triés par défaut)
et je voudrais avoir
1 ---- 3
2 ---- 2
3 ---- 1
4 ---- 2
5 ---- 1
7 ---- 1
J'ai trouvé cette proposition :
https://openclassrooms.com/forum/sujet/excel-equivalent-du-group-by-sql-79491
Mais elle ne me plait pas vraiment, je voulais savoir si il y avait mieux (je pense du coté des croisés dynamiques..)
J'ai un tableau comprenant un certain nombre de valeurs, et je voudrais faire l'équivalent d'un count(*) group by valeur (pour ceux qui connaissent le sql)
en gros :
origine :
1
1
1
2
2
3
4
4
5
7
(les champs sont triés par défaut)
et je voudrais avoir
1 ---- 3
2 ---- 2
3 ---- 1
4 ---- 2
5 ---- 1
7 ---- 1
J'ai trouvé cette proposition :
https://openclassrooms.com/forum/sujet/excel-equivalent-du-group-by-sql-79491
Mais elle ne me plait pas vraiment, je voulais savoir si il y avait mieux (je pense du coté des croisés dynamiques..)
A voir également:
- Comptage par groupe de valeur
- Comment créer un groupe whatsapp - Guide
- Sous groupe whatsapp - Accueil - WhatsApp
- Créer un groupe facebook - Guide
- Mail groupé - Guide
- Supprimer un groupe instagram - Forum Audio
6 réponses
Bonjour,
Au final tu répond toi même à la question.
Via un Tableaux Croisé Dynamique tu obtiendras le résultat.
Donne un Titre à ta colonne (ex: "Numéro" et fait Insert / PivotTables ou Tableaux Croisé Dynamique
Insert "Numéro" En Ligne puis dans Valeur.
Dans la catégorie Valeur sélectione "Compte" à la place de "Somme" et le tour est joué.
Au final tu répond toi même à la question.
Via un Tableaux Croisé Dynamique tu obtiendras le résultat.
Donne un Titre à ta colonne (ex: "Numéro" et fait Insert / PivotTables ou Tableaux Croisé Dynamique
Insert "Numéro" En Ligne puis dans Valeur.
Dans la catégorie Valeur sélectione "Compte" à la place de "Somme" et le tour est joué.
Bonsoir
J'ai une solution à ton problème, mais je n'osai te la proposer, vu que ma proposition précédente ne te convenait pas, de plus, elle à hérité d'un -1. J'ai donc attendu que quelqu'un te fasse une proposition, mais, visiblement, ça ne se bouscule pas au portillon.
Peut-être qu'entre-temps, tu as trouvé une solution. Sinon, voici la mienne.
Tout ce fait par VBA, en reprenant le principe que je préconisais dans mon précédent Post.
Il est composé de 2 feuilles, la première "FeuilleActive", est celle où se trouve les données à comptabiliser. L'autre affiche le résultat recherché.
Tu n'as qu'a l'adapter à tes données et à cliquer sur le bouton.
En espérant que cela te convienne.
https://www.cjoint.com/?CIbuwlyS53z
cordialement
J'ai une solution à ton problème, mais je n'osai te la proposer, vu que ma proposition précédente ne te convenait pas, de plus, elle à hérité d'un -1. J'ai donc attendu que quelqu'un te fasse une proposition, mais, visiblement, ça ne se bouscule pas au portillon.
Peut-être qu'entre-temps, tu as trouvé une solution. Sinon, voici la mienne.
Tout ce fait par VBA, en reprenant le principe que je préconisais dans mon précédent Post.
Il est composé de 2 feuilles, la première "FeuilleActive", est celle où se trouve les données à comptabiliser. L'autre affiche le résultat recherché.
Tu n'as qu'a l'adapter à tes données et à cliquer sur le bouton.
En espérant que cela te convienne.
https://www.cjoint.com/?CIbuwlyS53z
cordialement
Bah en fait, j'avait dit dans le mail que ta solution n'était pas ce que je voulait à l'époque.
Ici le résultat semble fonctionner, même si passer par un macro me sembl(ait) overkill.
Va falloir que j'analyse le fonctionnement pour l'adapter à mon besoin.
Merci, et ce coup ci, t'a +1, ce qui équilibre, nan ?
Ici le résultat semble fonctionner, même si passer par un macro me sembl(ait) overkill.
Va falloir que j'analyse le fonctionnement pour l'adapter à mon besoin.
Merci, et ce coup ci, t'a +1, ce qui équilibre, nan ?
Bonjour
autre solution
les données étant en colonne A
en colonne B faire un filtre avancé sans doublon
en colonne C, appliquer la formule =NB.SI(A2:A15;B2), à tirer vers le bas
cdlt
autre solution
les données étant en colonne A
en colonne B faire un filtre avancé sans doublon
en colonne C, appliquer la formule =NB.SI(A2:A15;B2), à tirer vers le bas
cdlt
Question subsidaire :
Je veux incorporer dans mon résultat les valeurs non représentées.
j'ai une série d'information de la forme suivante
1
1
3
3
3
4
7
7
7
(ne pouvant compter que des chiffres de manière croissante)
et je veux un résultat du style
1 - 2
2 - 0
3 - 3
4 - 1
5 - 0
6 - 0
7 - 3
Je veux incorporer dans mon résultat les valeurs non représentées.
j'ai une série d'information de la forme suivante
1
1
3
3
3
4
7
7
7
(ne pouvant compter que des chiffres de manière croissante)
et je veux un résultat du style
1 - 2
2 - 0
3 - 3
4 - 1
5 - 0
6 - 0
7 - 3
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir,
Tu peux utiliser le numéro de ligne exemple tu veux commencer tes sommes à la ligne 3, la syntaxe =ligne() te donne le numéro de ligne soit 3 en complétant avec -2 soit =ligne()-2 te donne le résultat 1 qui correspond à ta première valeur 1 à sommer, si tu commences tes sommes à la ligne 2 la syntaxe sera =ligne()-1 etc ...
la formule placée sur la ligne 3 pour sommer tes valeurs de la plage A2 à A100 sera
=NB.SI($A$2:$A$100;LIGNE()-2)
ou tu fais référence à une cellule contenant la valeur à sommer exemple en B2 tu as 1 en B3 tu as 2 etc
cette formule fera le reste
=NB.SI($A$2:A100;B2)
et tu incrémentes vers le bas en fonction de tes besoins
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Tu peux utiliser le numéro de ligne exemple tu veux commencer tes sommes à la ligne 3, la syntaxe =ligne() te donne le numéro de ligne soit 3 en complétant avec -2 soit =ligne()-2 te donne le résultat 1 qui correspond à ta première valeur 1 à sommer, si tu commences tes sommes à la ligne 2 la syntaxe sera =ligne()-1 etc ...
la formule placée sur la ligne 3 pour sommer tes valeurs de la plage A2 à A100 sera
=NB.SI($A$2:$A$100;LIGNE()-2)
ou tu fais référence à une cellule contenant la valeur à sommer exemple en B2 tu as 1 en B3 tu as 2 etc
cette formule fera le reste
=NB.SI($A$2:A100;B2)
et tu incrémentes vers le bas en fonction de tes besoins
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
re
"le fait de devoir rajouter une colonne, même camouflée, détruirait la mise en page catastrophique de mon fichier"
dans ma proposition, j'ai pris comme exemple la colonne B pour le filtre avancé, mais rien n'empêche de le mettre sur une autre feuille (sauf que dans ce cas, il faudra nommer la plage à filtrer) , ainsi tu ne touches pas à la structure de ta feuille
et ça marche très bien.
A+
"le fait de devoir rajouter une colonne, même camouflée, détruirait la mise en page catastrophique de mon fichier"
dans ma proposition, j'ai pris comme exemple la colonne B pour le filtre avancé, mais rien n'empêche de le mettre sur une autre feuille (sauf que dans ce cas, il faudra nommer la plage à filtrer) , ainsi tu ne touches pas à la structure de ta feuille
et ça marche très bien.
A+
(c'était exactement ça)
En fait, je savais quoi utiliser, mais je ne savais pas comment l'utiliser.
Si j'ai le temps, je répondrais plus en détail à la question pour que ceux qui n'ont jamais utilisé un croisé dynamique puissent le faire.