Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

convertir nombre en format texte en nombre

2 réponses
Avatar
Michel Voirain
Bonjour à tous,

Je reçoit des données(nombre) en differents format avec séparateur , ou .
Je dois convertir les cellules dans un des format pour export en vba. Mais
j'arrive pas !!! En VBA du moins!
Quelles solutions?

Merci à tous,
Michel

2 réponses

Avatar
Patrick Penet
Avec une petite fonction ?

Function nInterpretor(n As String) As Double
With Application
If IsError(CDbl(n)) Then
.DecimalSeparator = "."
Else
.DecimalSeparator = ","
End If
.UseSystemSeparators = True
End With
nInterpretor = n
End Function

Sub klm()
MsgBox nInterpretor("12,456") * 2 'test
End Sub

Note que la fonction n'accepte qu'un
n paramètre de type chaîne.

Cordialement.
PP

"Michel Voirain" a écrit dans le message de news: %
Bonjour à tous,

Je reçoit des données(nombre) en differents format avec séparateur , ou . Je dois convertir les cellules dans un des format pour
export en vba. Mais j'arrive pas !!! En VBA du moins!
Quelles solutions?

Merci à tous,
Michel



Avatar
Garette
Bonsoir,

Si tu connais le format décimal dans lequel tu veux travailler "." (point)
ou "," (virgule), il suffit de faire un remplacement de "." par "," ou
l'inverse.

Sub changedecimales()
Cells.Replace What:=",", Replacement:="."
End Sub

ou

Sub changedecimales()
Cells.Replace What:=".", Replacement:=","
End Sub