Comparaison de cellule

JMJAuto

XLDnaute Nouveau
Bonjour à tous,

Voici mon problème, dans ma feuille Excel je cherche à comparer une cellule avec un ensemble de cellules :
=SI(K2=S$2:S$38 ; "OK" ; "PASOK")

Dans les cellules S2 à S38 se trouve sur chaque ligne une chaîne de caractères
Je veux que si la chaîne de caractère dans K2 est égale à l'une des chaînes de caractères comprise entre S$2 et S$38, on affiche OK, sinon PASOK.

Par contre après je voudrais étendre cette formule à l'ensemble de ma colonne K, j'ai donc :
=SI(K2=S$2:S$38; "OK"; "PASOK")
=SI(K3=S$2:S$38; "OK"; "PASOK")
=SI(K4=S$2:S$38; "OK"; "PASOK")
[...]
=SI(K591=S$2:S$38; "OK"; "PASOK")

Tout marche correctement pour la 1ère ligne (K2).
Par contre dès la ligne K3 ça m'affiche PASOK même si la condition est bien remplie...

Exemple : dans la ligne K28, la chaîne de caractère est égale à l'une de celles comprises entre S$2 et S$38, pourtant Excel m'affiche PASOK...

Quelqu'un aurait-il une piste svp ?
Avez-vous besoin d'imprime écran pour mieux comprendre ?

Merci par avance !

Romain.
 

Dugenou

XLDnaute Barbatruc
Re : Comparaison de cellule

Bonjour,
Ben en fait on aurait bien besoin d'un fichier exemple avec 20 lignes pour bien comprendre.
Il me semble que ta formule telle quelle te donne le résultat pour la première cellule de la plage S2:S38
si tu veux tester la présence de chaine de caratère je ferai plutot si(nb.si(s2:s38;k2)=1;"OK";"PasOk")

Cordialement
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Comparaison de cellule

Bonjour Romain, et bienvenue sur le forum

Avez-vous besoin d'imprime écran pour mieux comprendre ?
Non, mais le fichier joint serait d'une grande utilité.
pas pour comprendre le problème mais pour pouvoir tester la réponse sans être obligé de reconstruire le fichier

à+
Philippe

Edit: Bonjour Dugenou
 

JMJAuto

XLDnaute Nouveau
Re : Comparaison de cellule

Bonjour, merci pour vos réponse.

En cherchant un peu je suis parti sur une autre formule similaire :

=SI(RECHERCHE(K2;S$2:S$38)=K2 ; "Ok" ; "PASOK")

Ca marche beaucoup mieux, mais il y a encore des cellules pour lesquelles ça pose problème, des fois je récupère comme valeur : "###" (ou quelque chose dans le genre) au lieu de "PASOK". Cela se produit par exemple quand il n'y a rien dans la cellule qu'on compare (K2 pour la première ligne). Mais cela se produit aussi, parfois, quand la cellule contient bien une chaîne de caractère.

Par contre pour les "OK" ça marche, ce qui était mon objectif principal.
 

JMJAuto

XLDnaute Nouveau
Re : Comparaison de cellule

Il y a juste quelques PASOK qui ne fonctionnent pas... D'ailleurs j'ai du mal à comprendre pourquoi, car entre les PASOK qui marchent et ceux qui ne marchent pas, il n'y a aucune différence de fonction ou quoi que ce soit...

Mais je ne peux pas vous envoyer le fichier source car il contient, évidemment, des choses confidentielles ^^

Si je trouve le temps cet aprèm j'en fais une copie en modifiant les données, pour vous l'envoyer.

Merci en tout cas !
 

JMJAuto

XLDnaute Nouveau
Re : Comparaison de cellule

Bonjour à tous,

je reviens solliciter votre précieuse aide pour un nouveau problème, toujours dans le même style que celui ci-dessus, je profite donc du topic.

Je dois réutiliser cette formule qui marchait parfaitement le dernier coup :
=SI(RECHERCHE(K2;S$2:S$38)=K2 ; "Ok" ; "PASOK")
Sauf que là je la simplifie :
=RECHERCHE(K2;S$2:S$38)=K2

Excel retourne donc 3 valeurs possibles :
- VRAI
- FAUX
- #N/A

Pourquoi me retourne t-il des fois #N/A ?

Par exemple :
=RECHERCHE(K190;S$2:S$38)=K190 me retourne #N/A, alors que la chaîne de caractères comprise dans la cellule K190 est bien la même qu'une des chaines de caractères comprises entre S$2 et S$38... Excel devrait donc retourner VRAI

Je remarque également que #N/A n’apparaît que pour certaines chaines de caractères, vous trouverez peu être cela stupide mais seules les chaines de caractère commençant par la lettre "A" me retournent cette valeur que je ne comprend pas.
Pour le reste tout fonctionne.

Merci encore !

Romain.
 

Dugenou

XLDnaute Barbatruc
Re : Comparaison de cellule

Bonsoir romain,
Cette fois ci tu n'y couperas pas : sans fichier joint avec un minimum d'éléments pour d'aider on ne pourra pas t'aider à expliquer cette erreur irrégulière. Pour ma part je n'aime pas trop le recherche tout court et sans certitude de trouver une correpondance exacte je m'absiendrait.
Dans l'attente de ta pj donc ...
Ah j'oubliais : voici ce que dit l'aide : Si la valeur de l’argument valeur_cherchée est inférieure à la plus petite valeur de la première ligne ou colonne (selon les dimensions de la matrice), la fonction RECHERCHE renvoie la valeur d’erreur #N/A
 
Dernière édition:

JMJAuto

XLDnaute Nouveau
Re : Comparaison de cellule

Bonjour Dugenou,

Entendu voici un bout du fichier à titre d'exemple.
Le tableau jaune est celui qui contient les villes de référence.

Si une ville de la colonne E correspond à une des villes du tableau jaune, alors il faut afficher VRAI dans la colonne F.
Sinon il faut afficher FAUX.

En utilisant le filtre automatique on peut afficher les #N/A

Merci beaucoup !

Romain.
 

Pièces jointes

  • ex.xls
    114.5 KB · Affichages: 46
  • ex.xls
    114.5 KB · Affichages: 54
  • ex.xls
    114.5 KB · Affichages: 52

Dugenou

XLDnaute Barbatruc
Re : Comparaison de cellule

Bonjour,
pour le premier #N/A rencontré : la ville n'existe pas dans la liste de référence donc on obtient #N/A !
je te propose la formule suivante qui marche dans tous les cas : =SI(NB.SI($H$2:$H$72;E2)=0;"faux";"Vrai")
Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
312 789
Messages
2 092 121
Membres
105 222
dernier inscrit
Pujeth_72