Bonsoir,
Je vais essayer d'être simple, mais ce n'est pas aussi simple que la formule !
Sachant que la fonction SUBSTITUE permet de choisir la position de la valeur cherchée (s'il y en a des doublons) :
SUBSTITUE(texte;texte_ancien;texte nouveau;[no_position])
il faut connaître le nombre de doublons, ce qui correspond à la postion du dernier doublon.
Pour compter le nombre de doublons, on compte le nombre de caractères du texte, duquel on soustrait le nombre de caractères du même texte mais dans lequel on a substitué la valeur cherchée par rien ("") :
=NBCAR(A1)-NBCAR(substitue(A1;"s";"")
le dernier argument [no_position] est facultatif puisque'on désire les remplacer tous.
Cette formule renvoie 2 "s" pour POISSON
Ensuite on remplace cette dernière valeur par un caractère qu'on a peu de chances de rencontrer dans le texte, ici le choix s'est porté sur µ, mais peut tout aussi bien être £ ou ù, §, .
=SUBSTITUE(A1;"s";"µ";2) qui renvoie : POISµON
Puis on cherche la position de ce µ :
=CHERCHE("µ";"POISµON") qui renvoie 5
En soustrayant le nombre de caractères du texte (7) de la posotion trouvée (5) on trouve 2, auquel il faut ajouter 1 pour trouver la position du µ
Il ne reste plus qu'à assembler ces diverses formules en une seule pour obtenir le résultat.
=NBCAR(A1)-CHERCHE("µ";SUBSTITUE(A1;"s";"µ";NBCAR(A1)-NBCAR(SUBSTITUE(A1;"s";""))))+1
En bleu : le nombre de "s" ou la position du dernier "s"
En rouge + bleu : on substitue le dernier "s" par "µ"
En marron + rouge + bleu : on trouve la position de dernier "s" à compter à partir de la gauche
Il reste à soustraire cette position du nombre de caractères du texte et d'y ajouter 1 pour trouver la position du premier "s" à compter à partir de la droite.
dré