Я использую этот код для записи данных в файл excel.Как написать excel C#
Microsoft.Office.Interop.Excel.Application excelapp = new Microsoft.Office.Interop.Excel.Application();
excelapp.Visible = true;
I am using this code to write to excel.
_Workbook workbook = (_Workbook)(excelapp.Workbooks.Open(@"C:\Path\To\Your\WorkBook\ExcelWorkBook.Xls"));
_Worksheet worksheet = (_Worksheet)workbook.ActiveSheet;
worksheet.Cells[1, 1] = "Name";
worksheet.Cells[1, 2] = "Bid";
worksheet.Cells[2, 1] = txbName.Text;
worksheet.Cells[2, 2] = txbResult.Text;
excelapp.Visible = false;
Этот код отлично работает, за исключением того, что он работает очень медленно. Я хочу самый быстрый способ написать tot excel. Если я запустил цикл, чтобы написать excel для записи тысяч строк, то он работает медленно. Есть ли более быстрый способ записи данных в файл excel, например, запись целого datatable в файл excel для записи числовых строк одновременно, а не ячейки по ячейке?
Вам нужно включить вычисления, пока вы обновляете данные. Вы должны остановить обновление экрана. Кроме того, вы можете напрямую вставлять многомерные массивы. Но, возможно, что более важно, вам нужно выпустить все объекты маршаллинга и выйти из себя, когда вы закончите. – Enigmativity
Используйте EPPlus, это лучшая библиотека для создания файлов Excel на C#. См. Http://stackoverflow.com/a/2537778/408710 – lukebuehler