Bonjour,
Il existe une fonction très pratique qui permet de traiter l'erreur sans
avoir à la détecter d'abord, donc sans avoir à écrire deux fois la fonction:
=SIERREUR(la fonction voulu; l'alternative si son résultat est une erreur)
Bon dimanche,
Michel
-----Message d'origine-----
De : Jean-Francois Nifenecker [mailto:jean-
francois.nifenecker@laposte.net]
Envoyé : dimanche 30 novembre 2014 10:01
À : users@fr.libreoffice.org
Objet : Re: [fr-users] [Calc] RechecheV et concatenation
Le 30/11/2014 09:21, claude a écrit :
=SI(ESTERREUR(RECHERCHEV(A1;$destinataires.$A$1:$D$10;2;0));"non
trouvé";RECHERCHEV(A1;$destinataires.$A$1:$D$10;2;0)&"
"&RECHERCHEV(A1;$destinataires.$A$1:$D$10;3;0))
Oui, bien entendu ça fonctionne. L'ennui -- si tant est qu'on puisse
parler d'ennui -- c'est que RECHERCHEV() est appelée *quatre* fois, ce
qui, à mon goût, en fait trois de trop.
Il faut savoir que la fonction RECHERCHEV() est gourmande en ressources.
Si le fichier (où elle est présente) est volumineux, cela peut induire
de forts ralentissements de l'interface à l'ouverture du fichier. Ceci a
été bien amélioré depuis plusieurs versions (4.2 si ma mémoire est
bonne). Il n'en reste pas moins que j'essaie toujours d'optimiser de ce
côté-là et d'éviter les redondances.
Pour revenir au cas soumis par Catof, je créerais dans la feuille cible
une colonne avec la seule fonction RECHERCHEV(), dans laquelle bien sûr
on trouverait soit des valeurs trouvées soit des erreurs. Pas grave, on
peut masquer cette colonne. Dans une seconde colonne, je ferais
l'analyse d'erreur :
[note : la colonne où se trouve RECHERCHEV() est B]
En C1, on aurait
=SI(ESTERREUR(B1);"mon message d'erreur";B1)
Propre, simple, de bon goût ;-)
Accessoirement, je préférerais concaténer dans la feuille source. Mais
c'est un autre débat.
--
Jean-Francois Nifenecker, Bordeaux
--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour savoir comment
vous désinscrire
Les archives de la liste sont disponibles à
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et
ne pourront pas être supprimés
--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être
supprimés
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.