web-dev-qa-db-fra.com

Point décimal CSV dans Excel

J'ai un CV avec les valeurs suivantes:

3271.96;274;272;1;1;0;1;0.071690;0;0;0;0;0;0;1.753130;1.75;0;1.75;

Mais lorsque j'ouvre le fichier avec Excel, je reçois ceci:

3271.96 274 272 1   1   0   1   0.071690    0   0   0   0   0   0   1.753.130   1.75    0   1.75

Pourquoi "1.753130" est converti en "1.753.130"? (1.753130 est un nombre décimal) comment "forcer" Excel à comprendre que ce sont des nombres décimaux?

Je crée le fichier cvs avec une application Web, il est donc difficile de modifier ma configuration Excel car de nombreuses personnes accèdent à mon site Web et téléchargent le fichier csv sur leur ordinateur.

Merci d'avance

12
Naty Bizz
  1. renommer la csv en .txt
  2. ouvrir Excel
  3. allez dans le fichier -> ouvrez et pointez sur votre fichier txt
  4. suivre les étapes de son importation
  5. assurez-vous d'utiliser ; comme délimiteur

voici la réponse que j'ai utilisée: 

  • allez dans l'onglet Données de la feuille Excel. 

  • cliquez sur le bouton from Text.

  • puis sélectionnez le texte ou le fichier csv. 

  • alors l'assistant d'importation sortira. sélectionnez option séparée par des virgules ou séparée par des espaces. 

  • puis sélectionnez delimeter. (c'est mieux si vous ne voulez pas que cela pose problème lors de l'importation de décimels) 

  • puis dans la fenêtre suivante il y aura l'option avancée pour le type de colonne général. Cliquez sur le bouton Avancé et choisissez comment séparer les décimales et les milliers. 

Changez le séparateur décimal en "." et retirez le mille séparateur avec un espace.

5
smoothumut

J'ai eu le même problème mais seulement cette solution n'a pas fonctionné pour moi.

Avant cela, je devais aller sur l'icône Office -> Options Excel -> Avancé et définir le délimiteur des milliers entre "." pour "" (rien).

3
Teo Inke

Il existe une méthode plus simple pour importer des données de text/csv dans Excel (2017):

  • Ouvrez un livre vierge dans Excel et cliquez sur Importer des données à partir de text/csv.
  • Sélectionnez le fichier.
  • L'assistant affichera un aperçu des données, mais si vous importez à partir d'un fichier csv avec des nombres décimaux/scientifiques, tous seront reconnus en tant que texte.
  • Avant d'importer, cliquez sur Modifier, vous verrez une feuille de calcul Excel avec un aperçu de vos données.
  • Si vous cliquez sur le bouton de l'éditeur avancé, une nouvelle fenêtre avec la requête Excel apparaîtra.

Vous verrez quelque chose comme:

let
    Origin = Csv.Document(File.Contents("C:\Users\JoseEnriqueP\Downloads\evaluation_output.txt"),[Delimiter=",", Columns=8, Encoding=1252, QuoteStyle=QuoteStyle.None]),
    #"Updated type" = Table.TransformColumnTypes(Origin,{{"Column1", Int64.Type}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}})
in
    #"Updated type"

Ensuite, vous pouvez écrire directement les types de chaque colonne: - Texte: saisir du texte - Entiers: Int64.Type - Décimales: Double.Type

Le code d'importation serait le suivant:

let
    Origin = Csv.Document(File.Contents("C:\Users\JoseEnriqueP\Downloads\evaluation_output.txt"),[Delimiter=",", Columns=8, Encoding=1252, QuoteStyle=QuoteStyle.None]),
    #"Updated type" = Table.TransformColumnTypes(Origin,{{"Column1", Int64.Type}, {"Column2", Int64.Type}, {"Column3", Int64.Type}, {"Column4", type text}, {"Column5", Double.Type}, {"Column6", Double.Type}})
in
    #"Updated type"

En faisant cela, vous obtiendrez directement vos données dans Excel.

1