Fonction si à plusieurs conditions

Fermé
illu-ace - 20 janv. 2016 à 15:38
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 20 janv. 2016 à 19:12
excel

Bonjour,
Pour commencer voici un exemple de mon fichier :
Une première table qui ressemble à celle ci:
Modèle Version A jour
TS-209 3.3.3 ...
TS-450 4.1.0 ...
TS-459 4.0.0 ...
TS-252 4.1.0 ...

Une seconde avec les versions les plus récentes des équipements :

TS-209 3.3.3
Tous les autres modèles 4.1.0

Et j'ai aussi sur le coté deux cases avec OUI et NON que je cible pour dire quand c'est vrai ou faux

J'aimerai que dans la colonne A jour, Si le modèle est 209 et si la colonne version correspond à celle de l'autre tableau (la plus récente afficher OUI, sinon afficher NON et que sinon, si pour tous les autres modèles, si dans la case version il y a la valeur de celle du deuxième tableau (4.2.0) afficher OUI, sinon afficher NON.

J’espère que mon explication n'aura pas été trop confuse.

Merci d'avance

1 réponse

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 412
20 janv. 2016 à 16:27
Bonjour
à adapter, si vos données sont:
feuil1!
colonne A code Colonne B version Colonne C A jour à remplir
Feuil2! les données à recouper
on commence en ligne 2
en C2 à tirer sur la hauteur utile:

=SIERREUR(SI(RECHERCHEV(A2;Feuil2!A:B;0)=B2;"OUI";"NON");"")

cette formule ne peut s'appliquer qu'à, partir de Excel 2007, sinon écrire (pour éviter des affichages #N/A si le code n'existe pas en feuil2):

=SI(NB.SI(Feuil2!A2)=0;"";SI(RECHERCHEV(A2;Feuil2!A:B;0)=B2;"OUI";"NON");""))

crdlmnt
0
Peut tu expliquer ce que fait la fonction que tu as écrite ?
0
Bonjour, Je n'arrrive pas du tout à comprendre ta fonction et comment m'en servir.
Merci d'avance
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 412
Modifié par Vaucluse le 20/01/2016 à 17:32
effectivement, c'est normal, j'ai omis un élément dans le code recherche, avec mes excuses:
(soit le ;2 après A:B)

=SIERREUR(SI(RECHERCHEV(A2;Feuil2!A:B;2;0)=B2;"OUI";"NON");"")

ça devrait aller mieux avec ça!

SIERREUR(formule);"") ne sert qu'à éviter un affichage d'erreur si le code A ne se trouve pas en feuil2

RECHERCHEV(A2;Feuil2!A:B;0)=B2

va chercher dans la colonne A de feuil2 la valeur de A2 feuil1! et ressort la valeur de la colonne B sur la même ligne pour la comparer à B2
la formule, renvoie OUI si les valeurs sont égales, NON dans le cas contraire

principe de RECHERCHEV pour mémoire:

=RECHERCHEV(valeur à chercher dans la 1° colonne du champ de recherche ; champ de recherche ; N° de colonne (dans le champ) de la valeur à ressortir ; Code excel pour le type de renvoi)

soit type de renvoi 0 pour une valeur exacte

crdlmnt
0
Si je comprends bien, cette fonction permet de rechercher par rapport à un tableau les versions qui sont récentes et si c'est le cas, elle renvoie la valeur de la version et si c'est la plus récente, elle affiche oui mais ma question est la suivante, étant donné qu'une colonne de mon tableau est "tous les autres equipements" ayant la même version tous, si je décide d'ajouter un équipement non connu (exemple: machinchose"), celui ci ne sera pas pris en compte ?
0
Il faut que je m'exprime mieux je pense,
Prenons 10 modèles differents d'équipements:
-TS1
-TS2
-TS3 ... jusqu'a 10
Sur un tableau, il y a les noms des equipements avec leur version la plus récente:
TS1 -> 4.1.0
TS2 -> 4.1.0
TS3 -> 4.1.0
TS4 -> 4.1.0
TS5 -> 4.1.0
TS6 -> 3.3.3
TS7 -> 4.1.0
TS8 -> 4.1.0
TS9 -> 4.1.0
TS10 -> 4.1.0
Donc, le TS6 étant seul et les autres sont regroupés dans la ligne "tous les autres"

J'ai ensuite un autre tableau avec les differents equipements que j'ai, leur version actuelle et une case a jour.
Je veux que la case A jour mette OUI ou NON selon mon tableau ci dessus sachant qu'il y a une ligne avec "Tous les autres" et une avec TS1
0