Macro convertir format nombre ne fonctionne pas

Bonjour

j'ai un problème avec une macro qui convertit une colonne en nombre. La macro a été enregistré en automatique et ne fonctionne pas quand elle est executé.

la macro enregistrée est :

Columns("D:D").Select

Selection.TextToColumns Destination:=Range("D1"), DataType:=xlFixedWidth, _

OtherChar:="|", FieldInfo:=Array(0, 1), TrailingMinusNumbers:=True

le fichier arrive en .txt avec le format personnalisé # 000,00

La colonne doit être convertit afin de pouvoir faire des sommes.

Intervient la macro qui ne fonctionne plus (je crois depuis la nouvelle version d'excel)

Elle met des . à la place des , en séparateur de décimale et lorsque le chiffre est entier, elle laisse la virgule.

Merci de votre aide

Bien cordialement

Véronique

Salut Véronique et bienvenue sur le Forum,

Afin de transformer tes points en virgules sur la plage D2:D_Dernière_ligne_utilisée, tu pourrais inclure ce bout de cote à ta macro après le transfert des données.

Dim i As Integer
For i = 2 To Range("D" & Rows.Count).End(xlUp).Row
    Range("D" & i) = Application.WorksheetFunction.Substitute(Range("D" & i), ".", ",")
Next i

Le résultat peut encore dépendre du format de base que contient ta colonne D.

Sans voir ton code complet ni ton fichier c’est difficile de t’aider plus. Eventuellement que tu devrais nous fournir ton fichier ainsi qu’un fichier .txt comme exemple. Ta macro paraît assez bricolée et il semble que l’on pourrait passablement la ‘nettoyer’.

Cordialement.

Rechercher des sujets similaires à "macro convertir format nombre fonctionne pas"