如何将DataTable保存为Excel文件(而不是csv),然后打开它

本文关键字:csv 然后 DataTable 保存 文件 Excel | 更新日期: 2023-09-27 18:24:13

我使用此代码在Excel中打开DataTable。这是一个wpf应用程序。

      excel = new Microsoft.Office.Interop.Excel.Application();
      wb = excel.Workbooks.Add();
      ws = (Microsoft.Office.Interop.Excel.Worksheet)wb.Sheets.Add();
      for (var i = 0; i < dt.Columns.Count; i++) {
        ws.Range["A1"].Offset[0, i].Value = dt.Columns[i].ColumnName;
      }
      for (var i = 0; i < dt.Rows.Count; i++) {
        ws.Range["A2"].Offset[i].Resize[1, dt.Columns.Count].Value = dt.Rows[i].ItemArray;
      }
      excel.Visible = true;
      wb.Activate();

但我想先将文件保存为xls文件(而不是csv),然后在Excel中打开它。或者至少在保存的Excel中打开它——这意味着,当我打开它时,它已经写在磁盘上了。现在,上面的代码只是打开没有文件名的Excel——数据没有保存在磁盘上。

如何将DataTable保存为Excel文件(而不是csv),然后打开它

若要保存Excel工作簿,请使用workbook.SaveAs方法。将此行插入wb之前。激活线路。

wb.SaveAs("C:'Example'Example.xls", xlExcel8)