[VBA] convertir texte en num dans une boucle

Résolu
titibobo2 Messages postés 46 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 28 novembre 2007 - 27 janv. 2006 à 20:43
titibobo2 Messages postés 46 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 28 novembre 2007 - 28 janv. 2006 à 10:47
Lu all,

J'ai des chiffres au format texte dans un cellule que je veux convertir en format nombre dans un cellule à coté et répéter l'opération pour la ligne suivante :

i = 3
While Cells(i, 6) <> ""Cells(i, 5) FormulaR1C1 "=VALUE(RC[1])"
i = i + 1
Wend

donc en cellule i,5 tant que la cellule i,6 n'est pas vide ça m'execute la formule.
Mais le résulat m'inscrit FAUX en i,5 puis i+1,5 idem.


L'erreur est donc dans la formule VALUE ...



Une idée ?


Merci

8 réponses

michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 30
28 janv. 2006 à 05:41
bonjour

j'espere que cette adaptation pourra t'aider

Dim i As Integer
i = 3
While Cells(i, 6) <> ""
Cells(i, 5) = CDec(Cells(i, 6))
i = i + 1
Wend

bon week end
michel
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
27 janv. 2006 à 21:08
Lut

Je crois que cela te marque faux car: (FormulaR1C1 = "=VALUE(RC[1])") est un booleen...


Enfin je pense.
0
titibobo2 Messages postés 46 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 28 novembre 2007
27 janv. 2006 à 21:20
donc si je mets 2 ça prend la cellule de la colonne adjacente ?
0
titibobo2 Messages postés 46 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 28 novembre 2007
27 janv. 2006 à 21:30
ben non ça change rien

ça non plus:
Cells(i, 5) FormulaR1C1 Cells(i, 6)

c'est le doubele "=" qui me gène
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
27 janv. 2006 à 22:40
Bonsoir,
Essaye si tu sais tirer parti de ce code.Ici, il n'y a que la cellule Cells(i, 5) qui est modifiée au format nombre

Sub Test()
Dim i
i = 3
While Cells(i, 6) <> ""
Cells(i, 5).Select
Selection.NumberFormat = "0.00"
i = i + 1
Wend
End Sub

jpleroisse
0
titibobo2 Messages postés 46 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 28 novembre 2007
27 janv. 2006 à 22:51
oui mais là ça mets la cellule i,5 au format nombre dans mon exemple i,5 est vide et doit prendre la valeur de i,6 en nombre ...

avec ton code faut copier le contenua vant si je comprend bien, non ?
0
titibobo2 Messages postés 46 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 28 novembre 2007
27 janv. 2006 à 22:58
le format n'est pas le bon

si j'ai du texte 0651110110 ça rest 0651110110

alros qu'avec la focntion cnum dans excel (value en vba je pense) ça devient 651110110
0
titibobo2 Messages postés 46 Date d'inscription dimanche 27 février 2005 Statut Membre Dernière intervention 28 novembre 2007
28 janv. 2006 à 10:47
Merci c'est exactement ce que je voulais !!! :)
0