3 chiffres après la virgule ??

Résolu
Salut,

je voulai savoir si il existe une formule pour que des champs d'un CONCATENER puisse avoir 3 chiffres après la virgule ? (j'ai essayé avec TEXTE, mais je crains que mes connaissances ne soient assez poussé....(TEXTE;"####,###")

Merci pour votre aide :)
Configuration: Windows Vista

37 réponses

Résumé de la discussion

Diverses méthodes permettent d'obtenir trois chiffres après la virgule lors de CONCATENER dans Excel, ce qui implique au choix des formats numériques insérés dans la fonction TEXTE ou l'ajustement du format de cellule. Plusieurs répondants suggèrent d'utiliser TEXTE(xxx, "0,000") ou TEXTE(xxx, "###,000") selon la locale, afin de forcer l'affichage de trois décimales lors de la concaténation et d'éviter la perte de format. De son côté, d'autres conseils insistent sur l'utilisation du symbole & plutôt que CONCATENER et indiquent que le séparateur décimal dépend du paramètre régional (virgule ou point). En pratique, certains notent que le format des cellules utilisées dans la concaténation doit être correctement configuré, et que l'attribution du format 0,000 peut varier selon le contenu des cellules sources.

Bobot (l’IA à votre service)
  1. si je comprends tu veux un résultat à 3 chiffres après la virgule ? tu dois cliquer droit dans la cellule - nombre et là tu choisis le style d'affichage que tu veux, dont le nbre de décimale
    7
    1. OH Eric, vraiment merci, mais je n'avais même pas regarder plus que sa, cette maudite "," !

      oui donc la formule fonctionne bien ...et je l'ai arrondi donc à 2 décimal après la virgule !

      merci à tous pour votre aide !

      (et le truc avec contatener, c'est que je ne connai pas bien le formule &, alors je préfere utiliser conca' comme sa j'suis sur de pas faire de faute ! ^^ mais je vais essayer de m'y mettre ;) )

      merci encor
      0
      1. Contributeur
        Bonjour tout le monde,

        La formule de pijaku fonctionne.
        Et comme il t'avait dit l'avoir testée tu aurais pu te pencher un peu plus dessus...
        Seulement son séparateur décimal est la ',' et toi c'est le '.'
        Maintenant s'embêter comme ça pour indiquer une dimension de palette au centième de millimètre est-ce que ça vaut vraiment le coup ?
        D'autre part mettre des concatener() à l'intérieur d'un concatener ne sert à rien sinon à rallonger encore la formule.
        Tu peux mettre 30 chaines dans un concatener().
        Et utiliser le & à la place de concatener() améliore la lisibilité: A1 & A2 & A31...

        eric
        2
        1. pas tout tout compris à ton raisonemment Raymond, désolé

          ...tu pense à reporter les données de même type de la feuille 1 sur une autre cellule ? et ensuite refaire le CONCATENER avec les nouvelles cellules utilisées ?

          N'y à t'il pas une macro pour faire que lorsque nous entrons une simension dans "A1" (dimensions donc) que une macro rajoute les 3 0 si nécessaire

          merci !

          P.S. je ne peux vous répondre uniquement durant les heures de boulot ! ^^ sinon j'aurai répondu plus tôt à Raymond ;) désolé ^^

          P.P.S enfaite, en y reflechissant, seulement 2 0 me suffirai, mais si c'est tout de même possible d'en avoir trois =)
          0
          1. Contributeur
            Salut.

            Et si on se montrait un peu logiques ?
            Le plus simple étant de concaténer des données de même nature et de même format, il faut commencer par transcrire le contenu de C17, C26, E26, N26, O26 et P26 dans AC17, AC26, AE26, AN26, AO26 et AP26 en format texte à 3 décimales, et reprendre la grande formule en remplaçant Ordre_d_expedition!E26 par Ordre_d_expedition!AE26 et ainsi de suite.
            0
            1. ...le souci doit-être chez moi...je ne sais pas pourquoi mais le resultat donne env sa : 0.023 x 0.023 x 0.023 au lieu de 23.000 x 23.000 ...etc...on connai la chanson ;)

              merci
              0
              1. je ne sais pas comment tu fais, car chez moi (en recopinat exactement ta formule) cela me met non-valide ?!?

                a tu fais ce calcul dans le concatener ?

                et si je le fais dans une autre cellule, cela me met : ,023 par ex...

                je ne comprend pas ou est l'erreur ?!?

                merci de ton aide :)
                0
                1. Modérateur
                  Je viens de réessayer. J'ai copié ma formule du post précédent et copié dans ton classeur... cela fonctionne.
                  Je vais essayer de te l'envoyer en MP... Sait-on jamais!!
                  0
              2. Modérateur
                Et bien voilà... Tout vient à point à qui sait attendre.....
                Ta formule fonctionne, restait juste à savoir ou placer les "TEXTE(xxx;"0,000")" c'est comme ceci :

                =CONCATENER(Ordre_d_expedition!E26&" "&"PALETTE"&SI(OU(Ordre_d_expedition!E26="1";Ordre_d_expedition!E26="1/2");"";SI(Ordre_d_expedition!C17="FR";"S";"N"));" ";CONCATENER("NR. ";Ordre_d_expedition!C26);" ";CONCATENER(TEXTE(Ordre_d_expedition!N26;"0,000");" x ";TEXTE(Ordre_d_expedition!O26;"0,000");" x ";TEXTE(Ordre_d_expedition!P26;"0,000");" cm"))
                j'ai essayé cela fonctionne plutôt bien...
                Par contre ne remplace pas 0,000 par ###,000 car chez moi en tout cas ça marche pas!!
                A+
                2
                1. Contributeur
                  Je me demande si tu ....
                  N26 EST BIEN UN NOMBRE tu aurais pu quand même vérifier par toi-m^me
                  et cette formule
                  =TEXTE(Ordre_d_expedition!N26;"###,000" )
                  fonctionne et renvoie 23,400
                  0
                  1. Oui, N26 est une validation ;) donc du texte (d'après ce que j'ai compris^^)
                    0
                    1. voilà le fichier :

                      http://www.cijoint.fr/cjlink.php?file=cj200907/cij3N2cHtl.xls

                      c'est donc la cellule C30 qui est à modifié, les valaurs se trouve sur la 1ère page et sont de N26 à O26

                      Je vous laisse découvrir ;)

                      ++
                      0
                      1. Contributeur
                        chez toi, les virgules sont marquées avec un point ou une virgule?
                        si tu es sur un XL anglophone
                        TEXT(N26;"# ###.000")
                        à moins que N26 soit du texte...
                        0
                        1. Si seulement, mais lorsque je met ceci, sa met se "non valide" rrrrrrrrrh !
                          à en peter un plomb !
                          ...alors...tjr pas interessé par ce ci-jiont ?
                          0
                          1. Contributeur
                            Si N26 est un nombre avec ou sans virgule
                            tout simplement
                            =TEXTE(N26;"# ###,000")
                            0
                            1. Est-ce qu'il serai utile de publier mon documetn sur ci-joint ?
                              0
                              1. Je suis vraiment désolé, mais autant faire quelque chose, autant le faire bien :)

                                Bien sûr si il n'y avait pas d'autre moyen que celui-ci, je le ferai, mais de à chaque fois devoir taper les 3 0...c'est un px....#%&||!

                                si t'avais quelque chose sous la main du style macro, ou une formule du style de texte ou je ne sais...quelque chose de plus pratique quoi ! ^^

                                merci :-)
                                0
                                1. Contributeur
                                  Mais justement.. la cellule qui contient (ton exemple : 23.000) DOIT être du texte et RESTE du texte.
                                  Pour faire l'essai, ouvre un nouveau classeur, sélectionne la cellule A6
                                  Tu tape un texte quelquonque
                                  Ensuite sélectionne la cellule A13 et tu tape 23.000 (avec un point)
                                  ensuite...
                                  >> Format >> Cellule >> Nombre et tu clic sur Texte.
                                  et enfin en B13 tu colle la formule
                                  =CONCATENER(A6;" ";TEXTE(REMPLACER(A13;CHERCHE(".";A13;1);1;",");"###,000"))
                                  Tu peu modifier la cellule A13 avec par ex: 23.2, ou 455.02
                                  tu dis...
                                  0
                                  1. je sai spas, on m'a dit d'en faire un nouveau, paske la question tu "topic" était résolu

                                    mais le soucis, c'est que je ne voudrai pas m'amuser à chaque fois taper les 3 0 tu vois comment ? je sais j'suis chiant ! ^^

                                    à moin que tu aie une macro pour mettre les 3 0 en restant texte ?

                                    merci :)
                                    0
                                    1. Contributeur
                                      La cellule avec 23.000 doit être formattée en texte.
                                      0
                                      1. pour la suite, il faut aller sur : http://www.commentcamarche.net/forum/affich 13257671 3 chiffre apres la virgule avec champs

                                        @lermite : j'ai pas tou compris à ta formule, j'ai essayé de la mettre dans le concantener avec les mod' nécessaire...tjr pas valide...je sais pas si c'est moi ou... ?!?

                                        ++ sur l'autre forum ;)
                                        0
                                        • 1
                                        • 2