Comment attribuer une valeur aux cellules si son voisin contient une chaîne spécifique?
Par exemple, les champs de la colonne A:
dog11
cat22
cow11
chick11
duck22
cat11
horse22
cat33
La syntaxe dans la colonne B serait la suivante:
=IF(SEARCH("cat",A1),"cat",IF(SEARCH("22",A1),"22","none"))
Il sélectionne toujours la première cellule TRUE, mais abandonne lorsque la valeur n'est pas vraie.
SEARCH
ne retourne pas 0
s'il n'y a pas de correspondance, il retourne #VALUE!
. Donc, vous devez encapsuler les appels à SEARCH
avec IFERROR
.
Par exemple...
= IF (IFERROR (SEARCH ("cat", A1), 0), "cat", "aucun")
ou
= IF (IFERROR (SEARCH ("cat", A1), 0), "cat", IF (IFERROR (SEARCH ("22", A1), 0), "22", "néant"))
Ici, IFERROR
renvoie la valeur de SEARCH
quand cela fonctionne; la valeur donnée de 0
autrement.
Vous pouvez utiliser OR()
pour regrouper des expressions (ainsi que AND()
):
=IF(OR(condition1, condition2), true, false)
=IF(AND(condition1, condition2), true, false)
Donc, si vous vouliez tester "chat" et "22":
=IF(AND(SEARCH("cat",a1),SEARCH("22",a1)),"cat and 22","none")