Droite, gauche, droite, gauche…

Un truc tout bête auquel je viens juste de penser...

Vous connaissez surement STXT qui permet de renvoyer une chaîne de caractère à partir de la position de début et de la longueur.

Mais comment faire l'inverse : partir de la fin de la chaîne pour renvoyer un certain nombre de caractères.
Par exemple, retourner le nombre de secondes - ici 24 - qui se trouvent juste avant les millisecondes ? Il faut donc partir de la fin de la chaîne.
Methode 1 sans test "," union : 19:23:05 - Tps : 00:00:24:49

Une solution est de faire une soustraction avec la fonction NBCAR dans une fonction STXT :
=STXT(A4;NBCAR(A4)-4;2)
qui se lit : en considérant la chaîne de caractère en A4, on part de (nombre de caractères total - 4) et on retourne 2 caractères. Le 4 correspond à 5 caractères moins 1 caractère.

En fait, on peut aussi faire quelque chose de similaire avec =GAUCHE(DROITE()) :
=GAUCHE(DROITE(A4;5);2)
Prends les 5 derniers caractères de A4 (DROITE), puis, prends les 2 premiers caractères du résultat (GAUCHE)

Les deux formules sont identiques en terme de résultats, mais je trouve la deuxième un peu plus facile à comprendre, car on ne doit pas faire de calcul pour déterminer le 4 (5-1). A chaque fois, mon cerveau fait un mini-nœud sur le -1.

Vous pouvez télécharger le fichier ici.

A bientôt.

Gaëtan

PS : Ne manquez aucune nouvelle astuce sur Excel, abonnez-vous à notre newsletter gratuite !
Pour marque-pages : permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *