Problème de conversion csv vers xls

XaxaPrime
Messages postés
1
Date d'inscription
vendredi 22 mars 2019
Statut
Membre
Dernière intervention
22 mars 2019
- 22 mars 2019 à 10:57
vb95
Messages postés
2630
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
19 mai 2022
- 23 mars 2019 à 20:47
Bonjours je bloque sur une partie de mon programme, je veut faire une conversion d'un fichier csv vers xlsx sur ce point j'ai un résultat qui me satisfait mais je bloque sur la "mise en page" car je n'arrive pas a avoir la date et l'heure écrit de façons correcte (voir screen) j'utilise CsvHelper et EPPlus


Voici mon fichier csv :


Voici mon fichier xlsx :


Voici se que je voudrait avoir (a l'exeption de numero de carte que je voudrait en entier car il fait 30 chiffre:



Voici mon code :
            string csvFilePath = @".\Config\"+Param4.Text+".csv";
string excelFilePath = @".\Config\"+Param4.Text+".xlsx";

string worksheetsName = alea2+Param4.Text;
bool firstRowIsHeader = false;
var excelTextFormat = new ExcelTextFormat();
excelTextFormat.Delimiter = ',';
excelTextFormat.EOL = "\r";



var excelFileInfo = new FileInfo(excelFilePath);
var csvFileInfo = new FileInfo(csvFilePath);

using (ExcelPackage package = new ExcelPackage(excelFileInfo))
{
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add(worksheetsName);
worksheet.Cells["A1"].LoadFromText(csvFileInfo, excelTextFormat, OfficeOpenXml.Table.TableStyles.Medium25, firstRowIsHeader);
package.Save();


}

MessageBox.Show("Convertion Effectuer");

1 réponse

vb95
Messages postés
2630
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
19 mai 2022
151
23 mars 2019 à 18:41
bonjour !
Les 3 paramètres doivent être transmis en tant que chaine de caractères
Le E+29 prouve que la valeur est passée en numérique et s'inscrit en notation scientifique
Attention à tes formats Date : sur le fichier .csv c'est le mois de mars ( JJ/MM/AAAA ) alors que sur ta troisième image on a 2 mois différents ( 03 : mars et 08 : août )

0
Bonjour merci de ta réponse, j'avais pas fait gaffe à mes date, y aurait il un moyen d'enlever le E+29 car j'aurai besoin des 30 chiffre
0
vb95
Messages postés
2630
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
19 mai 2022
151
23 mars 2019 à 20:47
Bonsoir !
Traite les données du fichier .csv non pas comme des valeurs numériques mais comme des chaines de caractères !
N'utilises pas la conversion automatique mais transfère chaque donnée d'une ligne du fichier .csv vers ton fichier Excel
0