[Résolu] Tri selon deux critères

Verba_Tim

XLDnaute Occasionnel
Bien le bonjour à tous ^^
Encore un petit problème qui me fait tourner en rond depuis un moment...
Je dois faire en quelques sortes un tri dans des donnés selon deux critères. J'illustre:

J'ai une liste qui ressemble a ceci:
a 0
a 1
b 0
a 0
a 1
b 1
a 0
a 1
a 0
b 0
a 1
a 1
b 1
etc...

Je souhaite savoir combien j'ai de "a 1".
J'ai tout d'abord pensé a un countif, mais le countif n'accepte que 1 paramètre... Je donc pensé a deux countif... mais la encore c'est l'échec critique puisque ces deux paramètre sont totalement indépendant... Le problème est que je ne peut pas supprimé les "0" puisque je vais m'en resservir, ni les "b" pour la même raison.

J'ai peu être une autre solution sous la main, à savoir utilisé le tri auto pour m'afficher une liste sous la forme suivante:

a 1
a 1
a 1
a 1
a 1
b 1
b 1
b 1
a 0
a 0
a 0
b 0
b 0
b 0
b 0
b 0


Mais je ne sais pas encore comment compté uniquement les "a 1"...

Si vous avez une petite idée je prend :D

Sur ce, bon appétit, et au plaisir de vous lire,

Verba_Tim
 
Dernière édition:

mth

XLDnaute Barbatruc
Re : Tri selon deux critères

Bonjour,

Essaie avec un sommeprod(), (à adapter:)
Code:
=SOMMEPROD((A1:A12="a")*(B1:B12=1))

Bien à toi,

mth
 

Pièces jointes

  • Classeur1.xls
    17 KB · Affichages: 45
  • Classeur1.xls
    17 KB · Affichages: 52
  • Classeur1.xls
    17 KB · Affichages: 51
C

Compte Supprimé 979

Guest
Re : Tri selon deux critères

Salut Verba_Tim

Une petite chose : meric de faire des recherches sur le forum
avant de poster, ce sujet à été maintes fois abordé

Nombre de cellules selon 2 critères ou plus ...
Code:
=SOMMEPROD((A1:A13="a")*(B1:B13=1))
En VBA
Code:
DLig = Range("A" & Rows.Count).End(XlUp).Row
Result = Application.Evaluate("SUMPRODUCT((A1:A" & DLig & "=""" & MonString & """)*(B1:B" & DLig & "=" & MaVal &"))")

A+

Edit : oups coucou Mth ;)
 
Dernière modification par un modérateur:

Verba_Tim

XLDnaute Occasionnel
Re : Tri selon deux critères

Merci Bruno ^^
J'ai effectivement parcourue quatre-cinq sujet portant le même thême, mais aucun d'entre eux n'a vraiment répondu de façon satisfaisante à mes attentes... :/
Ta formule m'intéresse ^^' mais je me trompe peut être dans l'écriture...
J'ai écris:
SumProduct (("E1:E100000" = "AA1") * ("B1*B100000" = "0"))
Mais ca ne passe pas -__- Suis-je si mauvais?? ^^"
 
C

Compte Supprimé 979

Guest
Re : Tri selon deux critères

Re,

Suis-je si mauvais
Ben heuuu, comment dire ... ;)

Si tu ne respecte pas ce que j'ai mis, effectivement ça ne passera pas
La disposition des guillemet, les 3 guillemets, ce n'est pas par erreur, c'est qu'il les faut

Donc suit l'exemple que j'ai mis et ça devrait bien se passer

Nota : une valeur numérique ne doit pas être encadrée par des guillemets, sinon cela devient du texte

A+
 

Verba_Tim

XLDnaute Occasionnel
Re : Tri selon deux critères

Aurais-tu modifier la formule entre deux? xD Je me rapel pas avoir vu d'evaluate il y a 30s ^^
bref, mes soupçons sont confirmé... Il faut bien passer par Evaluate, étant donné que Sommeproduct est impuissant... (dans mon cas en tout cas ^^")
Merci ^^ je test (correctement surtout ;D ) et je te dis ce qu'il en est ^^
 

pierrejean

XLDnaute Barbatruc
Re : Tri selon deux critères

Bonjour Verba_Tim
Bises Mireille
Salut Bruno

A tester:

Code:
Sub compte()
tablo1 = Range("A1:A100000")
tablo2 = Range("E1:E100000")
For n = 1 To 100000
 If tablo1(n, 1) = "AA1" And tablo2(n, 1) = "0" Then cpte = cpte + 1
Next n
MsgBox (cpte)
End Sub
 

Verba_Tim

XLDnaute Occasionnel
Re : Tri selon deux critères

Alors après test, le Evaluate marche mal ^^' que ma valeur soi à 1 ou à 0 il me compte uniquement le nombre de AA1 total...
Par contre, la technique de Pierrejean marche à merveille, et le temps d'exécution est tout a fait respectable ^^

Bruno je te promet que j'ai bien rentrée ta formule cette fois ^^" mais elle m'aime pas on dirait...

Merci Pierrejean, Mth, et Bruno, vous assurez ^^

Bon appétit!!
 
C

Compte Supprimé 979

Guest
Re : Tri selon deux critères

Re,

Bonjour cher maitre PierreJean ;)

Juste pour te montrer que ça marchait (à part le * entre B1 et B :eek:)

A+
 

Pièces jointes

  • Verbatim_Test.xls
    38.5 KB · Affichages: 51

Discussions similaires

Réponses
3
Affichages
591

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz