[EXCEL]Recherche multi-critères dans un tableau

NicoRep
Messages postés
2
Date d'inscription
mercredi 30 novembre 2005
Statut
Membre
Dernière intervention
4 décembre 2005
- 3 déc. 2005 à 12:06
FaroukVazaha
Messages postés
42
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
11 septembre 2010
- 5 déc. 2005 à 13:27
Bonjour à tous

Etant en train d'ébaucher un projet sous Excel, je me retrouve confronté à un double-problème, mais dont la racine est la même.

Le contexte du 1er problème:
---------------------------------
Je dispose d'un tableau à plusieurs colonnes. Je cherche dans un premier temps à ce que ne soit pris en compte que les lignes de la dernière colonne avec pour critères ce qu'il y a dans les colonnes 2 et 3.

Par exemple dans la colonne 1, je disposerais des dates sur une année. Dans la colonne 2, j'aurais "Culture" avec pour données "blé", "orge", et "tournesol". Dans la colonne 3, j'aurais "Agriculteur" avec pour données "Michel", "Jacques" et "Pierre". Enfin, dans la dernière colonne, j'aurais les quantités correspondantes.
Ainsi, on peut imaginer qu'à la ligne 2, j'aurais par exemple "10/06/2005" - "blé" - "Michel" - "30".

Maintenant, comment faire pour ne sélectionner que les lignes contenant par exemple "Orge" en colonne 2 et "Michel" en colonne 3? La finalité étant de donner le nb de fois où Michel a eu de l'orge. J'ai tenté le NB.SI, mais cette fonction ne marche qu'avec un seul critère de colonne...

Le contexte du 2nd problème:
----------------------------------
Toujours dans un tableau à plusieurs colonnes, la dernière affichant des données ciblées. Imaginons que dans la colonne 1 j'ai des entreprises "Moulinex", "Seb" et "Braun". Dans la 2ème colonne, j'ai le nom de quelques employés
"Michel", "Jacques" et "Pierre"
qui travaillent pour les 3 entreprises et dans la dernière le nb d'heures mensuelles de ces employés pour chaque entreprise.
Ainsi, on peut imaginer qu'à la ligne 2, j'aurais par exemple "Moulinex" - "Pierre" - "80".

Comment donc faire pour trouver le minimum d'heures travaillées pour une entreprise donnée, sachant que les données ne sont pas triées par entreprise?

Exemple:
Seb --------- Michel ----- 90
Moulinex --- Pierre ------ 80
Seb --------- Jacques --- 45
Braun ------- Pierre ----- 85
Moulinex --- Jacques --- 50

Le résultat de ma fonction, si le critère est "Moulinex" devrait être "50".

Voilà c'est long mais c'est pour être le plus clair possible
Je précise qui ce n'est pas possible avec des fonctions Excel, l'option VBA est tout à fait envisageable.
Merci d'avance

5 réponses

FaroukVazaha
Messages postés
42
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
11 septembre 2010

3 déc. 2005 à 14:18
Pour ton 2ème problème la fonction à utiliser est : bdmin

col A Col B Col C

<COLGROUP>
<COL span=2 width=93>
<COL width=65>

----

1 Société ,
,
,
----

2 Moulinex ,
,
,
----

3,
,
,
----

4,
,
,
----

5 Société,
Employé,
Heures,
----

6 Seb
,
Michel
,
90,
----

7 Moulinex
,
Pierre
,
80,
----

8 Seb
,
Jacques
,
45,
----

9 Braun
,
Pierre
,
85,
----

10 Moulinex
,
Jacques
,
50

Cette Phrase est à mettre en A11 mergé jusqu'à C11
"Nombre d'heures minimum de la société " & A2 &" "

En D11 la fonction est : =BDMIN(A5:C10;"Heures";A1:A2)

Il suffit de changer le nom de la société en A2 pour avoir le nb mini d'heure de cette société.

Pour ton premier pb je pense qu'avec un =si(et(critère1;critère2);vrai;faux)
tu devrais le resoudre facilement en 2 étapes. Une première étape ecrirait un 1 dans la colonne complètement à doite, et il te suffira de faire le total de cette colonne pour connaitre le nb de fois ou etc....

Si cela a solutionner tes soucis en partie c'est génial. Bon courage.
Farouk
0