Convertir des données du format texte vers le format nombre

lizanne828

XLDnaute Nouveau
Bonjour,

j'ai trouvé quelqu'un qui a donné une astuce pour convertir des données initialement en format nombre vers du format texte :

Sub ConversionNombreEnTexte()

Application.ScreenUpdating = False
Dim c As Range
For Each c In Selection
c.NumberFormat = "@"
c = Format(c.Value)
Next c

Application.ScreenUpdating = True

End Sub

Je pensais pouvoir m’en sortir avec ce code et l’adapter à mon problème : je cherche à faire exactement l’inverse ! J’ai une colonne qui s’incrémente grâce à une macro qui va chercher des données dans une autre feuille, en matriciel. Lorsque l’import a fini de se faire, ma colonne a transformé mes données initialement numériques en format texte, (je ne sais pas pourquoi, bref…) et je souhaite donc les reconvertir en numérique.
Je n’y arrive que manuellement dans l’onglet « données »/ « convertir », mais je souhaiterais que cela se fasse dans ma macro.

J'ai essayé avec l'enregistreur de macro mon action « données »/ « convertir », mais ça ne donne rien...

Y a-t-il une manière d’adapter cette macro, ou en trouver une autre?

Merci!!!
 

Pierrot93

XLDnaute Barbatruc
Re : Convertir des données du format texte vers le format nombre

Bonjour,

"données" => "convertir" devrait faire l'affaire, au préalable applique un format standard aux cellules.... sinon reviens avec un bout de fichier que l'on puisse tester...

bonne journée
@+
 

lizanne828

XLDnaute Nouveau
Re : Convertir des données du format texte vers le format nombre

Re!

Voilà j'ai inventé un exemple de fichier où on voit le problème: la macro s'exécute feuille1 avec le bouton, et on voit bien dans la feuille "synthèse" que la colonne C est en format texte. Du coup, quand on actualise le TCD, tout se met à 0!

Merciiii!!!!!
 

lizanne828

XLDnaute Nouveau
Re : Convertir des données du format texte vers le format nombre

oui je sais que ça fonctionne, mais je ne veux pas le faire manuellement, je veux que ma macro le fasse!!!

Quand j'essaie par l'enregistreur de macro pour trouver le code à rajouter, ça ne marche pas :confused:
 

oly

XLDnaute Nouveau
Re : Convertir des données du format texte vers le format nombre

Bonjour,

Essayez ce bout de code :

Sub ConversionTexteEnNombre()

Application.ScreenUpdating = False

Dim c As Range
For Each c In Selection
c.NumberFormat = "0.00"
c = Format(c.Value)
Next c

Calculate

Application.ScreenUpdating = True

End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : Convertir des données du format texte vers le format nombre

Re,

avec l'aide de l'enregistreur de macro, et qui fonctionne...

Code:
Option Explicit
Sub Macro1()
    Range("C2:C22").TextToColumns Destination:=Range("C2"), DataType:=xlFixedWidth, _
        FieldInfo:=Array(0, 1), TrailingMinusNumbers:=True
End Sub
 

lizanne828

XLDnaute Nouveau
Re : Convertir des données du format texte vers le format nombre

Oly,

je ne comprends pas, ce code me fait tout planter.

Pierrot, effectivement cela marche!
J'avais pourtant essayé avec l'enregistreur de macro, j'ai dû louper une étape!

Merci à vous pour votre aide!

A bientôt sûrement ;)
 

Discussions similaires

Réponses
8
Affichages
586

Statistiques des forums

Discussions
314 665
Messages
2 111 689
Membres
111 259
dernier inscrit
Seb15