Menu

Recherche sous plusieurs conditions

Messages postés
2
Date d'inscription
vendredi 30 novembre 2018
Dernière intervention
30 novembre 2018
-
Bonjour à tous,

Je suis actuellement en train de travailler sur une base de données et je cherche à afficher des valerus selon plusieurs conditions.

Mon fichier Excel est constitué de plusieurs feuille. La première nommée "USINAGE" est ma base de données.
La seconde, "Fiche" est une feuille récapitulative dans laquelle je veux reprendre certains éléments de ma base de données que j'ai nommée "Tableau 3".

Je voudrais que :
- Si le n°OF compléter dans le cellule D3 de la feuille "Fiche" est égale au n°OF de la base de données, colonne E (un même n°OF apparait plusieurs fois)
- ET SI la position renseignée en cellule C2 de la feuille "Fiche" est égale à la position de al base de données, colonne AL (une m^me position apparait plusieurs fois,
[- ET SI la lettre dans la colonne L de la base de données (Fts) est égal à A (A apparait plusieurs fois), ] <- condition en option

ALORS : inscrire dans la colonne F (cases violettes) de la fuille "Fiche", le n°Tôle associé retrouvé dans la base de données "USINAGE" colonne K.

J'ai essayé plusieurs formule et notamment :
=SIERREUR(INDEX(Tableau3[N° Tôle];PETITE.VALEUR(SI($D$3=Tableau3[N° OF];(LIGNE(Tableau3[N° OF])-MIN(LIGNE($A$2)))+1;"");LIGNES(F$7:F7)));"") : qui fonctionne mais sans prendre en compte la position (ni la lettre "A")

Et j'ai tenté une double condition avec SI(ET...
=SIERREUR(INDEX(Tableau3[N° Tôle];PETITE.VALEUR(SI(ET($C$7=Tableau3[Position];$D$3=Tableau3[N° OF]);(LIGNE(Tableau3[N° OF])-MIN(LIGNE($A$2)))+1;"");LIGNES(F$7:F7)));"") : mais cela ne fonctionne pas.

J'espère avoir été claire!

Pouvez-vous m'aider? Est-ce que c'est faisable sans macro?

Merci à tous :)
Afficher la suite 

Votre réponse

1 réponse

Messages postés
23175
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
13 décembre 2018
0
Merci
Bonjour

=SIERREUR(INDEX(Tableau3[N° Tôle];PETITE.VALEUR(SI($C$7&$D$3=Tableau3[Position]&Tableau3[N° OF]);(LIGNE(Tableau3[N° OF])-MIN(LIGNE($A$2)))+1;"");LIGNES(F$7:F7)));"")
bien sur en matricielle. Ne fonctionnera que si vous n'avez que des codes à 4 chiffres en N°OF, sinon risque de confusion

crdlmnt

Enenoiz
Messages postés
2
Date d'inscription
vendredi 30 novembre 2018
Dernière intervention
30 novembre 2018
-
Merci beaucoup, ça a l'air de fonctionner même avec un n°OF contenant 8 chiffres (pour l'instant)!

Bonne journée!
Vaucluse
Messages postés
23175
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
13 décembre 2018
-
Pas de problème tant que les codes ont le même nombre de chiffres.
Si jamais il y avait une redondance, (Par exemple 21 et 5000 avec 2 et 15000)voyez en modifiant les adresses cherchées et champs de recherche (en gras ci dessous)
=SIERREUR(INDEX(Tableau3[N° Tôle];PETITE.VALEUR(SI($C$7&"_"&$D$3=Tableau3[Position]&"_"&Tableau3[N° OF]);(LIGNE(Tableau3[N° OF])-MIN(LIGNE($A$2)))+1;"");LIGNES(F$7:F7)));"")
si cela vous convient, merci de passer le sujet en résolu
(roue dentée à droite du titre en haut du fil)
Bonne route
crdlmnt
Commenter la réponse de Vaucluse