如何编写excel c#

本文关键字:excel 何编写 | 更新日期: 2023-09-27 18:26:36

我正在使用此代码将数据写入excel文件。

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;

这段代码运行良好,只是运行速度很慢。我想要一种最快的写作方式。如果我运行一个循环来写excel来写数千行,那么它的工作速度会很慢。有没有更快的方法将数据写入excel文件,比如将整个数据表同时写入数据表行的excel文件,而不是逐个单元格?

如何编写excel c#

尝试将数组插入excel:

    object[,] arr = new object[rowCount, columnCount];
    //Assign your values here
    Excel.Range c1 = (Excel.Range)worksheet.Cells[0, 1];
    Excel.Range c2 = (Excel.Range)worksheet.Cells[rowCount - 1, columnCount];
    Excel.Range range = wsh.get_Range(c1, c2);
    range.Value = arr;

在每个单元格中写入/读取值的速度太慢,会消耗大量时间,请尝试在内存中执行。