Problème Conversion d'un nombre en devise - Macro

Bonjour,

J'ai un petit soucis avec une conversion.
Je vais mettre le fichier en ligne, ca sera plus facile à comprendre.

Il s'agit de la colonne C intitulée montant.
Les cases C11 à C45 sont figées dans un type texte. Lorsque je modifie le type en devise, ou nombre, rien ne se passe. La cellule passe bien en "devise", mais pas de modification du format de la case.

Il y a un petit coin vert dans la cellule (en haut à gauche) qui me propose des solutions. Celles ci fonctionnent, mais ne s'enregistrent pas dans la macro. Cette action, qui corrige mon problème, ne semble pas pouvoir etre traduite en VBA...

Pouvez vous m'indiquer comment je peux résoudre mon problème ?.
Merci beaucoup

Ci joint le lien du document

https://www.cjoint.com/?3GlsqlaPakP

4 réponses

  1. Oui exactement, c'est copié depuis une autre feuille excel.
    Effectivement, ta solution fonctionne du tonerre !!

    Je n'avais pas pensé au collage spécial.

    Ces deux solutions fonctionnent en tout cas. Merci pour votre aide

    Merci à tous les deux
    A très bientot !
    0
    1. Contributeur
      Bonjour,

      Les cases C11 à C45 sont figées dans un type texte
      Il faut les transformer en numérique d'abord.

      Si ton séparateur décimal est le . sélectionner ta plage et Remplacer , par .
      Sinon copier une cellule vide, sélectionner ta plage et collage spécial addition.

      eric
      1
      1. Re

        Ceux sont des données que tu as copiées d'un autre fichier. pour cela il ne reconnaît pas le format
        voici la correction

        Sub testing123()
            nbl = Range("A65536").End(xlUp).Offset(1, 0).Row
            For i = 2 To nbl
                Cells(i, 3).Value = CDbl(Cells(i, 3).Value)
                Cells(i, 3).NumberFormat = "#,##0.00 \$"
            Next
        End Sub

        cdlt
        1
        1. Bonjour

          copier cette ligne

          Selection.NumberFormat = "#,##0.00 \$"

          cdlt
          0
          1. Merci pour ta réponse,

            Malheuresement, j'ai déjà fait cette solution !

            Le soucis est qu'elle ne s'applique pas. Tu peux consulter le lien que j'ai mis à disposition dans mon précédent post.

            Merci quand meme !
            0