Microsoft.Bureau de.Interop.Excel vraiment lent

Je suis de l'exportation d'un 1200 X 800 matrice (indexMatrix) à un fichier excel en utilisant le standard de Microsoft.Bureau de.Interop.Excel. L'application fonctionne, c'est juste que c'est vraiment vraiment vraiment lent( même pour l'100 x 100 de la matrice) . J'ai également exporter dans un fichier texte par le biais d'un TextWriter un il fonctionne presque instantanément . Est-il possible d'exporter le fichier excel plus vite?

Voici mon code :

        Excel.Application xlApp=new Excel.Application();
        Excel.Workbook xlWorkBook;
        Excel.Worksheet xlWorkSheet;
        object misValue = System.Reflection.Missing.Value;

        //xlApp = new Excel.ApplicationClass();
        xlWorkBook = xlApp.Workbooks.Add(misValue);

        xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
        for (int i = 0; i < 800; i++)   //h
            for (int j = 0; j < 1200; j++)
                xlWorkSheet.Cells[i+1,j+1] =indexMatrix[i][j];


        xlWorkBook.SaveAs("C:\\a.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
        xlWorkBook.Close(true, misValue, misValue);
        xlApp.Quit();

        releaseObject(xlWorkSheet);
        releaseObject(xlWorkBook);
        releaseObject(xlApp);

        MessageBox.Show("Excel file created , you can find the file c:\\csharp-Excel.xls");
InformationsquelleAutor Alex | 2010-10-21