Remplacer le séparateur de décimale

Contenu du snippet

Permet de remplacer un séparateur de décimale virgule (,) ou point (.) par un point ou une virgule.

Source / Exemple :


nblignes = ActiveSheet.UsedRange.Rows.Count
'compte le nombre de lignes de la feuille active
For c = 17 To 24
'définit les colonnes surlesquelles se feront les modifications
For j = 1 To nblignes
'définit les lignes surlesquelles se feront les modifications
'
tai = Len(Cells(j, c))
'compte le nombre de caractères
sep = Mid(Cells(j, c), tai - 2, 1)
'identifie le séparateur de décimale, se trouvant 3 caractères avant la fin (pour un nombre avec 2 chiffres après la virgules, si plus remplacer le 2 par ce nombre de chiffres apres la virgule)
If sep = "." Then
'pour que la modif ne se fasse que si on trouve un .
gauche1 = Left(Cells(j, c), tai - 3)
'sélectionne tous les caractères à gauche du séparateur
droite2 = Right(Cells(j, c), 2)
'sélectionne tous les caractères à droite du séparateur
Cells(j, c) = gauche1 & "," & droite2
'concatène la partie gauche, le séparateur voulu et la partie droite
Cells(j, c) = Cells(j, c) + 0
'active la cellule en tant que nombre
End If
Next j
Next c

Conclusion :


Ca faisait un an que je faisait mes macros en 2 parties. Execution, puis remplacer le séparateur à la main, puis reéxécution. VICTOIRE!

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.