none
Changement format cellule RRS feed

  • Question

  • Bonjour à tous, 

    Je coince sur un fichier Excel que je lis et que transforme en un autre fichier.

    Là où ça coince, c'est sur le format d'une cellule. On a un format Date et dans mon code, je ne prend que du string. du coup, je prend le format text de la date, ce qui se traduit par : 31/04/2014 devient 41670.

    La question c'est comment je pourrai garde mon format de date ?

    mon code : 

    string colonne1, colonne2;
    List<string> NewColonne1 = new List<string>();
    List<string> NewColonne2 = new List<string>();
    
    public void LireFichierExcel()
            {
    
                Microsoft.Office.Interop.Excel.Application xlApp;
                Excel.Workbook xlWorkBook;
                Excel.Worksheet xlWorkSheet;
                Excel.Range range;
                object misValue = System.Reflection.Missing.Value;
                int ligne = 0;
                int colonne = 0;
    
                xlApp = new Excel.Application();
    
                if (MonFichier != "")
                {
                    try
                    {
                        xlWorkBook = xlApp.Workbooks.Open(MonFichier, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
                        xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
    
                        range = xlWorkSheet.UsedRange;
    
                        string[] ligne_fichier = new string[50];
                        for (ligne = 2; ligne <= range.Rows.Count; ligne++)
                        {
                            for (colonne = 1; colonne <= range.Columns.Count; colonne++)
                            {
                                ligne_fichier[colonne] = Convert.ToString((range.Cells[ligne, colonne] as Excel.Range).Value2);
                            }
    
                                //on recupere les données du tableau excel
                                int i = 1;
                                colonne1 = ligne_fichier[i]; i++;
                                colonne2 = ligne_fichier[i]; i++;
    
     NewColonne1.Add(colonne1 + "-000002");
     NewColonne2.Add(colonne2);
    
     xlWorkBook.Close(true, misValue, misValue);
     xlApp.Quit();
     releaseObject(xlWorkSheet);
     releaseObject(xlWorkBook);
     releaseObject(xlApp);
    Dans cet exemple, c'est ma colonne2 qui est au format DateTime.

    C'est un code que j'utilise régulièrement mais je n'ai jamais de cellule au format Date dans le fichier Excel.

    Par avance merci !


    "Un bon technicien n'est pas un technicien qui pense tout savoir" Lallemand Sébastien MCITP EA Windows Server 2008 R2 Apprenti développeur C# EF

    mercredi 28 mai 2014 13:52

Réponses

Toutes les réponses