Bonjour,
Pour faire suite à mon précédent message sur User à propos d'une formule testant qu'une saisie est bien une date mise en
forme comme une vrai date.
J'ai élaboré (en attendant) la formule suivante :
A1= cellule à tester
B2=ET(OU(TYPE(A1)=1;TYPE(A1)=8);CELLULE("FORMAT";A1)>="D1";CELLULE("FORMAT";A1)<="D5";MAINTENANT()=MAINTENANT())
Je propose que l'on ajoute une fonction à LibO Calc pour réaliser cette tâche en natif.
Le nom possible :
US : ISDATEWELLFORMATTED(...;[...];[...])
FR : ESTDATEBIENFORMATE(...;[...];[...])
Les paramètres possibles :
1er obligatoire : Référence de la cellule testée (bien tester que indirect() est accepté)
2de facultatif : Caractère => CODE du TYPE de format attendu
(voir CELLULE("FORMAT";REF_CELL) Ex. "'D1'-'D5'" pour tester une valeur numérique ayant un format
de type D1 et D5;
ou ">='D1'-<='D5'" pour tester
une valeur ayant un format de type compris entre ...
soit date simple, date raccourcis, tronqué, ou complété d'un heure)
Par défaut "'D1'" (date au format simple DD-MM-AAAA ou assimilé)
3ème facultatif : Caractère => Description du format personnalisé personnalisé (TYPE=G par le fonction
CELLULE("FORMAT";REF))
attendu avec une description ou doit être placé le DD les MM et les AA (ex. "\"année \"" YYYY
\" le \" MM \" jour \" DD")
A noter j'ai mis le \ en caractère d'Esc, je suis pas sûr que ce soit le plus approprié
pour LibO.
Par défaut pas de prise en charge d'un format personnalisé
Pour simplifier les codes erreurs retournés, je pense que seul un problème de paramètre doit être
signalé en cas d'erreur.
Cette fonction n'existant apparemment pas dans MS Excel, je pense qu'il faut prévoir dès maintenant comment elle serait
convertie par le filtre pour pouvoir obtenir un maximum de compatibilité lorsque l'on enregistrerai au format concurrent.
A noter que cette fonction doit faire partie des fonctions réévalués systématiquement si une cellule est modifié dans la
classeur au même titre que maintenant() et alea().
La fonction CELLULE("";) devrait d'ailleurs aussi être dans ce cas...
En espérant avoir fait avancé la chose...
A+
Samuel
--
Envoyez un mail à discuss+help@fr.libreoffice.org pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/discuss/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être
supprimés
Context
- [fr-discuss] [AMELIORATION CALC] création d'une fonction testant une date formaté en tant que tel. · Samuel Mounier (Liste CGO)
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.