Salut,

j'ai un petit soucis de conservation de format numérique

description rapide :
j'ouvre un fichier texte avec excell,
je copie 2 colonnes
je ferme le fichier texte
je colle les deux colonnes dans un autre fichier

problème : la virgule disparait

config : séparateur numérique = ","

description détaillée :
j'ai un fichier texte avec des valeurs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
41,372203	0,000000
40,389933	0,020408
...
62,817208	0,979592
63,749042	1,000000
je l'ouvre avec excel
(je l'enregistre juste pour debugger)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
        ExcelApp.Workbooks.OpenText FileName:=nomFichierLoi, Origin _
                      :=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
                      xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, _
                      Comma:=False, Space:=True, Other:=False
       ExcelApp.Range(Cells(1, 1), Cells(nbPoints, 2)).Select
       ExcelApp.Selection.NumberFormat = "0.000000"
 
        ' debug 
        ExcelApp.ActiveWorkbook.SaveAs FileName:=nomFichierLoi + ".xls", _
        FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
        ' /debug
ce qui me donne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
41,372203	0,000000
40,389933	0,020408
...
62,817208	0,979592
63,749042	1,000000
je veux copier ces deux colonnes dans un nouveau fichier
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
        ExcelApp.Range("A1:B" & nbPoints).Select
        ExcelApp.Selection.Copy
        ExcelApp.ActiveWorkbook.Close (False) ' Fermeture
puis je ferme mon fichier vu que j'en ai plus besoin

là j'ai un soucis, mon espion de visual m'indique que toutes mes "," ont sauté et que les valeurs comme 62,817208 sont devenues 62817208... (en exécutant l'action close) sur une seule colonne...
bizarrement sur la seconde colonne toutes les valeurs sauf le 0 et le 1 sont devenues des champs textes ("Nombre stocké sous forme de texte")

du coup quand je veux coller mes deux colonnes...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
    ExcelApp.Sheets(nomLoi + "_DATA").Activate
    ...
    ExcelApp.Range(Cells(3, 2 * i - 1), Cells(2 + nbPoints, 2 * i)).Select
    ExcelApp.ActiveSheet.Paste
j'obtiens
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
41372203	0,000000
40389933	0,020408   (0,020408 -> "Nombre stocké sous forme de texte")
...
62817208	0,979592   (0,979592 -> "Nombre stocké sous forme de texte")
63749042	1000000
j'ai bien essayé de remettre un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ExcelApp.Selection.NumberFormat = "0.000000"
juste avant le paste mais j'obtiens
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
41372203,000000	0,000000
40389933,000000	0,020408
...
62817208,000000	0,979592
63749042,000000	1000000,000000
je trouve pas ...