Textes et nombres sous EXCELL

Bonjour,

A la suite de copier-coller, j'obtiens des nombres sous forme de texte dans des cellules en raison de leur écriture.

Exemple : "123.45%" qui est interprété comme texte par Excell.

Je voudrais utiliser ces valeurs en tant que nombres, donc valeurs numériques.
Le caractère "%" pose donc problème (pour les cellules sans ce symbole, je multiplie par 1 et j'obtiens des nombres).

Quelle formule me permettrait de convertir le contenu de mes cellules en format "###.##%" au format numérique "###,##" utilisable pour des calculs ultérieurs ?

N.B. Le nombre de "#" est variable dans mes cellules d'origine tant sur les parties entières que décimales !

Merci d'avance pour vos réponses.

5 réponses

  1. Bonjour,
    Au passage, convertir le texte en nombre, vous pouvez essayer cette méthode :
    Sélectionner une cellule vide et la Copier puis sélectionner votre plage à convertir et clic sur Collage spécial ... et cocher l'opération Addition et terminer par OK.
    1
    1. La solution de michel_m me convient parfaitement vu mes connaissances assez limitées concernant Excell.

      par formule:

      =CNUM(SUBSTITUE(GAUCHE(A1;NBCAR(A1)-1);".";","))


      J'ai testé, ça fonctionne très bien.

      Ne maîtrisant pas VBA, je ne peux malheureusement tester les autres solutions proposées (je sais juste enregistrer une macro à partir d'actions faites à la souris, et activer cette macro via un "bouton" affecté, ce qui est assez limité !^^).

      En tous cas, merci à tous pour vos réponses rapides.
      0
      1. Bonsoir,

        ' utiliser format
        dans l'ex ma valeur est en A1 et l'écris en A2 en la formatant

        Sub essai()

        Cells(2, 1) = Format(Cells(1, 1), "0.00%")

        End Sub
        0
        1. Contributeur
          Bonjour,

          par formule:
          =CNUM(SUBSTITUE(GAUCHE(A1;NBCAR(A1)-1);".";","))

          il y a peut-etre +simple
          0
          1. Contributeur
            Version VBA pour corriger directement sur la cellule active
            Sub transformerennombre()
            texto = Left(ActiveCell, Len(ActiveCell) - 1)
            ActiveCell = CDbl(Application.Substitute(texto, ".", ","))
            End Sub
            0
        2. et si tu sélectionnes la colonne entière et que tu cliques sur le format % ?
          0