[Résolu] isoler les cellules contenant une adresse courriel

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
hounais
NOOuvel adepte
NOOuvel adepte
Messages : 17
Inscription : 20 mai 2013 23:34

[Résolu] isoler les cellules contenant une adresse courriel

Message par hounais »


La modération vous a écrit: Parlons français : un mail est une allée arborée !

Bonjour,

j'ai un tableau de 3 colonnes par 3300lignes dans lequel environ 10% des cellules contiennent une adresse mail que je voudrais récupérer.
Je pensais pouvoir les isoler facilement dans une colonne vide adjacente par un B2=TROUVE(@;A2;1) , et déployer vers le bas mais la formule me renvoie #NOM?
vous savez ce que j ai fais de mal?
Dernière modification par micmac le 05 déc. 2018 13:29, modifié 2 fois.
Raison : Ajout de la coche verte
LibreOffice 6.0.7.3 sous W10
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 5753
Inscription : 02 janv. 2009 23:56

Re: isoler les cellules contenant une adresse mail.

Message par Jean-Louis Cadeillan »

Bonjour,
hounais a écrit :la formule me renvoie #NOM?
@ est un nom que ne connaît pas Calc, "@" est une chaîne de texte que Calc sait traiter.
1 est la valeur par défaut du 3ème argument, tu peux ne laisser que les deux premiers. Maintenant, si tu souhaites mettre en valeur les cellules contenant "@", tu peux passer par une Mise en Forme Conditionnelle (MFC) sur un contrôle d'erreur associé à TROUVE(), du genre :

Code : Tout sélectionner

NON(ESTERR(TROUVE("@";A2)))
Cordialement,
Jean-Louis
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
hounais
NOOuvel adepte
NOOuvel adepte
Messages : 17
Inscription : 20 mai 2013 23:34

Re: isoler les cellules contenant une adresse mail.

Message par hounais »

Merci
Si je fais B2=TROUVE("@";A2;1), j'obtiens #VALEUR! (idem si je fais =TROUVE("@";A2)).
Mais ta formule fonctionne.
Du coup je l'ai convertie en =SI(NON(ESTERR(TROUVE("@";A2)));A2;"") et c'est parfait!

Que veut dire ce "#VALEUR!" ? C'est parce que je dois rajouter une valeur si vraie/si faux ?
LibreOffice 6.0.7.3 sous W10
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 5753
Inscription : 02 janv. 2009 23:56

Re: isoler les cellules contenant une adresse courriel

Message par Jean-Louis Cadeillan »

TROUVE("@";A2) renvoie la position du caractère "@" s'il est présent dans la chaîne A2 et #VALEUR! sinon.Comme #VALEUR! est un code d'erreur, NON(ESTERR(TROUVE("@";A2))) renvoi VRAI quand "@" est présent, FAUX sinon.
Voir aide ici.
Cordialement,
Jean-Louis
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
hounais
NOOuvel adepte
NOOuvel adepte
Messages : 17
Inscription : 20 mai 2013 23:34

Re: [Résolu] isoler les cellules contenant une adresse courr

Message par hounais »

Merci Jean-louis pour l'explication très claire
LibreOffice 6.0.7.3 sous W10