Date: prev next · Thread: first prev next last
2021 Archives by date, by thread · List index





-------- Message transféré --------
Sujet :         Re: [fr-users] [LO Calc] Zéros non significatifs à droite
Date :  Tue, 16 Mar 2021 12:45:20 +0100
De :    Claire <ocleyr2lalune@zaclys.net>
Pour : SB45730 <sb45730@gmail.com>, users LibreOffice LO <users@fr.libreoffice.org>



je vous mets les 2, vous choisirez.

Les fonctions sont assez basiques à comprendre. C'est l'imbrication qui peut être source d'erreur.

On est tous d'accord, on travaille sur des caractères qui en l’occurrence sont des chiffres, mais ne font l'objet d'aucun calcul. Ils sont donc à considérer comme du texte.

C'est donc sur ce texte que l'on travaille.


1- Selon le nombre de caractères significatifs, vous déterminez le nombre de zéro à ajouter, et vous concaténer (avec l'opérateur & pour simplifier)

Si votre valeur initiale est en A1 (comme le dit Jean Michel, il est préférable de travailler avec une colonne intermédiaire, de saisie, que vous pourrez masquer ensuite).

=A1&REPT("0";9-NBCAR(A1))

=> Vous calculez le nombre de caractères avec NBCAR

=> Vous répétez le nombre de zéro qu'il faut avec REPT (soit 9 moins les chiffres déjà présents...). C'est ce qui permet de définir le nombre de zéro non significatifs.

2- Si besoin, pour ajouter les espaces, pour la lecture...

je pense qu'il y a plusieurs solutions.

Après tout, vous pourriez reconsidérer que vous manipulez des valeurs, les convertir de nouveau (avec la fonction CNUM) puis appliquer le séparateur de milliers...

Ce que j'ai essayé me parait mieux (mais il faut gérer les imbrications). Il s'agît explicitement d'ajouter des espaces avec la fonction remplacer.

On indique que l'on remplace le 4e caractère avec un " ", et pour ne rient perdre, on remplace une longueur de 0 caractère. On applique cette même opération pour le 8e caractère (il faut tenir compte de l'espace ajouté précédemment).

la formule précédente étant en C1, cela donne

=REMPLACER(REMPLACER(C1;4;0;" ");8;0;" ")

Pour tout englober (la valeur étant en A1)
=REMPLACER(REMPLACER(A1&REPT("0";9-NBCAR(A1));4;0;" ");8;0;" ")

ce qui est moins compliqué que je pensais au départ...


Le classeur exemple est dispo à cette adresse (pendant 1 mois). N'hésiteez pas à consulter l'aide pour des explications sur les fonctions citées...

https://drop.devloprog.org/r/nJHDZkTL1h#bmYX+tKqws/Kt/pLyL8JPojPF74JqffXZFw5iVKN4is=


Claire


Le 16/03/2021 à 12:21, SB45730 a écrit :
Re,

L'espace n'est pas indispensable, surtout si ça complique. C'est juste un + pour la visualisation.

Merci de votre retour,
Cordialement.
Stéphane.

Le 16/03/2021 à 12:19, Claire a écrit :
J'arrive à compléter vos valeurs grâce à NBCAR et REPT. Avez vous besoin d'un espace tous les 3 chiffres (pour savoir s'il faut compliquer la formule).

C'est bien de ne pas avoir de numéro de compte à 3 chiffre, ça évite un si imbriqué supplémentaire...

En fonction de votre réponse je vous envoie un classeur exemple et les explications

Claire

Le 16/03/2021 à 12:15, SB45730 a écrit :
Bonjour,

Ok, je vais voir ce que je peux faire avec les chaînes de caractères.

À la base, il y en a entre 30 à 50.

Ce n'est pas une grosse entreprise mais il peut être utile d'avoir une codification assez fine pour de l'analytique, de l'analyse ou la TVA.

Pour le compte 512, je sais bien. C'était juste un exemple.

Merci de votre aide,
Cordialement.
Stéphane.

Le 16/03/2021 à 11:58, Jean-Michel COSTE a écrit :
Le 16/03/2021 à 10:00, SB45730 a écrit :
Bonjour à tous,

Je bute sur un problème de présentation dans un tableau.

Je dois indiquer des numéros de comptes comptables à 9 chiffres avec des zéros non significatifs à droite. Hors ils se mettent à gauche.

Un exemple :
Je saisi 512. Ça me donne à l'affichage 000 000 512 alors qu'il me faudrait 512 000 000.

Ça doit être tout bête mais je ne trouve pas comment faire pour mettre ces zéros non significatifs automatiquement (sans faire une autre colonne avec un alignement à gauche) à droite.

Bonjour,

Ce sont des chaînes de caractères, pas des nombres. Il y en a beaucoup à saisir ?

Au pire, une autre colonne avec une formule pour compléter avec des 0.

Pour avoir des comptes à 9 chiffres, ça doit être une grosse entreprise !!!

Au passage, il n'est pas recommandé d'utiliser un numéro de compte global comme 512 pour avoir un suivi des opérations.....

Bonne journée,



--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy


--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

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.