Extraire chaine de caractères

Résolu/Fermé
PYGOS69 Messages postés 452 Date d'inscription jeudi 23 août 2012 Statut Membre Dernière intervention 10 octobre 2023 - Modifié le 16 sept. 2022 à 11:18
yclik Messages postés 3423 Date d'inscription vendredi 25 juillet 2014 Statut Membre Dernière intervention 27 novembre 2023 - 16 sept. 2022 à 17:48

Bonjour,

Je cherche une formule ou une fonction qui extrait une chaine de caractères numérique de 13 ou 15 caractères, qu'elle que soit sa position dans le texte d'une cellule.

Exemple : A2 =

"1/ Merci de contacter la personne pour l'affaire en cours.... Son code est le 3562458548795 pour aujourd'hui"

ou

"suite au contact pour l'affaire en cours.... saisir le code 356245854879512 svp."

L'extraction sera correcte si la chaine de caractères est de 13 caractères ou 15 caractères.

Merci d'avance,

Bien cordialement,
Windows / Firefox 91.0

A voir également:

3 réponses

yclik Messages postés 3423 Date d'inscription vendredi 25 juillet 2014 Statut Membre Dernière intervention 27 novembre 2023 1 445
16 sept. 2022 à 11:57

Bonjour

 A tester

si texte en A1

=GAUCHE(STXT(A1;TROUVE("35";A1);17);TROUVE(" ";STXT(A1;TROUVE("35";A1);17)))
1
PYGOS69 Messages postés 452 Date d'inscription jeudi 23 août 2012 Statut Membre Dernière intervention 10 octobre 2023 21
Modifié le 16 sept. 2022 à 12:52

Bonjour et un grand merci !

Comme le précise blux le code n'est jamais le même.....Donc 35 ne sera pas forcément présent. Le code est aléatoire mais commence par 3 ou 4....

0
yclik Messages postés 3423 Date d'inscription vendredi 25 juillet 2014 Statut Membre Dernière intervention 27 novembre 2023 1 445 > PYGOS69 Messages postés 452 Date d'inscription jeudi 23 août 2012 Statut Membre Dernière intervention 10 octobre 2023
16 sept. 2022 à 17:48

Re

dans ce cas

A tester

=GAUCHE(STXT(A1;SI(ESTERREUR(TROUVE(" 3";A1));TROUVE(" 4";A1)+1;TROUVE(" 3";A1)+1);17);TROUVE(" ";STXT(A1;SI(ESTERREUR(TROUVE(" 3";A1));TROUVE(" 4";A1)+1;TROUVE(" 3";A1)+1);17)))
1
blux Messages postés 25585 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 28 novembre 2023 3 260
16 sept. 2022 à 12:32

sauf que si le texte ne contient pas 35, on n'est pas bon...

1
blux Messages postés 25585 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 28 novembre 2023 3 260
Modifié le 16 sept. 2022 à 12:56

Salut,

si la version d'excel le permet (il faut récupérer un pack supplémentaire : https://www.excel-pratique.com/fr/fonctions-complementaires/installation-macro-complementaire) :

=REGEX_EXTRACT(texte; expression_régulière)

avec \d{13}|\d{15} comme expression régulière (à mettre entre quotes)


A+ blux           "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

1
PYGOS69 Messages postés 452 Date d'inscription jeudi 23 août 2012 Statut Membre Dernière intervention 10 octobre 2023 21
16 sept. 2022 à 12:14

Bonjour blux,

Merci je testerais avec excel 2010. Sinon je garde pour excel 365.

0