Format des nombres

karstou

XLDnaute Nouveau
Bonjour à tous,

Petit problème au niveau du format des nombres.

Je récupère un fichier qui est un export d'un logiciel type gmao
Dans ce fichier j'ai des nombres qui se présente sous cette forme dans une colonne:

-2.350,36
250,56
...

le séparateur de milliers étant un ".", je ne peux pas faire de calcul avec ce chiffre.

Quand je procède à la main avec Edition > Remplacer > "." par "", ça marche nickel

Par contre quand je le fais sous vba, si il ne trouve pas de ".", il supprime la virgule...

Du coup avec l'exemple du dessus, je me retrouve avec :

-2 350,36
25056
...

Donc pas top niveau exploitation.

J'ai pas mal regardé si il y avait des solutions mais rien qui ne marche pour moi

Je suis sous excel 2000 et je veux automatiser cette tâche le plus possible.

Je m'en remet donc à vos idées qui m'ont souvent bien aidé dans le passé ;)
 

ralph45

XLDnaute Impliqué
Re : Format des nombres

Bonjour karstou,

A coller dans un module (sélectionner une colonne avant d'exécuter la macro) :

Code:
    Selection.Replace What:=".", Replacement:="", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Selection.NumberFormat = "0.00"
A+
 

mutzik

XLDnaute Barbatruc
Re : Format des nombres

bonjour,

j'avais eu un jour le même prob
ma soluce en vba
- j'ai remplacé toutes les virgules ',' par un '$' (ou par ce que tu veux)
- j'ai supprimé tous les '.' et toutes les ',' (pour être sur)
- j'ai supprimé tous les ' ' (espaces)
- j'ai remplacé tous les '$' par un point ou une virgule suivant le séparateur décimal configuré sur le poste

Salut Pierrot
 

karstou

XLDnaute Nouveau
Re : Format des nombres

Merci pour vos réponses :)

@: Ralph45

J'ai mis en place le module suivant :

Sub essai()

Columns("E:E").Select

Selection.Replace What:=".", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.NumberFormat = "0.00"

End Sub

Mais quand je lance l'execution j'ai une erreur d'execution '1004'

@ : Pierrot93

Je ne comprend pas trop comment me servir de la fonction convertir.
A la première étape je choisis l'option "délimité" mais à la deuxième pour le séparateur j'ai plusieurs choix et je ne sais pas à quoi cela correspond.
Séparateur décimal ou milliers ? en faisant des essais, il ne se passe rien de bien concluant :/
 

Pierrot93

XLDnaute Barbatruc
Re : Format des nombres

Re, bonjour Bertrand:), Ralph

tu selectionnes la colonne en question, 1ère étape tu choisis largeure fixe => 2ème étape, suivant => 3 ème, bouton avancé, et tu spécifies le format de tes données source....
 

karstou

XLDnaute Nouveau
Re : Format des nombres

@: mutzik

Merci pour l'idée,
Je vais tester, mais comment procèdes-tu en vba pour supprimer les " ", "." et "," ?

@: Pierrot93

A l'étape 3, je n'ai pas de bouton avancé.
J'ai uniquement le choix entre Standard, Texte, Date et Colonne non distribuée
Cela peut venir de ma version excel ?
 

Pierrot93

XLDnaute Barbatruc
Re : Format des nombres

Re, bonjour Michel;)
A l'étape 3, je n'ai pas de bouton avancé.
J'ai uniquement le choix entre Standard, Texte, Date et Colonne non distribuée
Cela peut venir de ma version excel ?
oui, il y a des chances... et si tu coches "standard" et tu cliques sur "terminer", tu as le résultat attendu ?

bon après midi
@+
 

karstou

XLDnaute Nouveau
Re : Format des nombres

Qui dit Import de fichiers autres que xls entraîne souvent des problèmes avec les formats de nombres et de dates.

Comme souvent, il aurait fallu joindre un fichier type pour pouvoir tester :confused:.

Enfait c'est bien un fichier excel que je récupère, mon logiciel de gmao me permet un export des données sur Excel.

Je vous joins un exemple de se que je récupère, il n'y a dans cet exemple que la colonne qui m'intéresse, j'ai supprimé les autres données des colonnes.

J'ai également laissé le code proposé par ralph45.

@ : Pierrot

Je n'obtiens pas le résultat voulu avec l'option Standard.
 

Pièces jointes

  • essai.XLS
    20 KB · Affichages: 42
  • essai.XLS
    20 KB · Affichages: 46
  • essai.XLS
    20 KB · Affichages: 44

karstou

XLDnaute Nouveau
Re : Format des nombres

Que la fonction convertir ne marche pas d'une version d'excel à une autre, je peux le comprendre.

Mais pour le code ça me surprend.

En tous cas merci à tous les deux pour votre aide !

Pour le moment j'ai réussi par une façon détournée à récupérer un fichier excel avec les valeurs directements en nombre.
Mais ce n'est pas très pratique à obtenir.
 

Discussions similaires

Réponses
5
Affichages
183

Statistiques des forums

Discussions
312 555
Messages
2 089 561
Membres
104 211
dernier inscrit
clubdesjeunesdela7