Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Extraire une chaîne de caractères sous condition

ttlan

XLDnaute Nouveau
[Ok] Extraire une chaîne de caractères sous condition

Bonjour,

Je voudrais extraire une chaine de caractères d'une autre, sous condition, sinon je garde la chaîne de caractères d'origine complète.
La condition est la présence d'un marqueur dans la chaine de caractères d'origine. Si je trouve le marqueur, je garde la partie à droite du marqueur, sinon... erreur ! car le marqueur n'est pas trouvé
Exemple :

J'ai une liste d'URLs dont certaines sont des redirections, d'autres des URLs directes

Code:
A1 http://sitederedirection.php?url=http://sitecible.com
A2 http://accesdirect.com

Dans b1 je voudrais obtenir http://sitecible.com (là, ça marche)
Dans b2 je voudrais obtenir http://accessdirect.com (là, j'ai une erreur )

La formule que je tente, en b1, b2 etc. ...
=SI(TROUVE("url=";A1)>1;DROITE(A1;NBCAR(A1)-TROUVE("url=";A1)-3);A1)

S'il y a une redirection avec "url=", c'est OK
Mais, si la condition TROUVE("url=";A1) n'est pas "vraie", plouf !

Plus généralement, je me heurte assez souvent à ce problème : je ne sais pas comment tester une condition "vrai" / "faux")

Comment m'en sortir

Cordialement
 
Dernière édition:

Tibo

XLDnaute Barbatruc
Re : Extraire une chaîne de caractères sous condition

Bonjour ttlan,

Essaye en remplaçant le début de ta formule ainsi :

=SI(ESTNUM(TROUVE("url=";A1));.....

@+
 

ERIC S

XLDnaute Barbatruc
Re : Extraire une chaîne de caractères sous condition

Bonjour

à essayer sans garantie

=SI(esterreur(TROUVE("url=";A1));DROITE(A1;NBCAR(A1)-TROUVE("url=";A1)-3);A1)

----------Bonjour TIBO--------
 

ttlan

XLDnaute Nouveau
Re : Extraire une chaîne de caractères sous condition

Re,

Je viens d'essayer ça qui a l'air de fonctionner
=SI(ESTERREUR(TROUVE("url=";A1));A1;DROITE(A1;NBCAR(A1)-TROUVE("url=";A1)-3))

Merci
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…