Étiquette : C#

  • Excel, C# et cellule au format texte

    Excel, C# et cellule au format texte

    Pour générer un fichel Excel depuis C#, il y a plusieurs solutions.

    L’utilisation de Microsoft.Office.Interop.Excel en est une.
    Malheureusement, il n’y a pas de documentation si complète que cela qui existe.

    Le problème que je rencontrais, était de mettre une cellule au format Text.
    La solution est la suivante :

    Microsoft.Office.Interop.Excel.ApplicationClass excel = null;
    Microsoft.Office.Interop.Excel.Workbook wb = null;
    Microsoft.Office.Interop.Excel.Worksheet ws = null;
    Microsoft.Office.Interop.Excel.Range rg = null;
    object tm= Type.Missing;

    excel = new Microsoft.Office.Interop.Excel.ApplicationClass();
    wb = (Excel.Workbook)(excel.Workbooks.Add(System.Reflection.Missing.Value));
    ws = (Microsoft.Office.Interop.Excel.Worksheet)wb.ActiveSheet;

    rg = ws.get_Range(« A1 », tm); //Récupération de la première cellule de la première ligne
    rg.NumberFormat = « @ »; //Mise au format text de la cellule
    rg.Value2 = « 10-1010 »; //On remplit la cellule avec la valeur

    wb.Close(false, tm, tm);
    excel.Quit();