C# DataTable导出到Excel:简单实用的SaveToExcel函数

12 下载量 58 浏览量 更新于2024-08-30 1 收藏 237KB PDF 举报
在C#编程中,将DataTable的数据高效地导出到Excel表格是一项常见的需求。本文主要介绍了如何通过一个自定义函数SaveToExcel来实现这一功能。首先,要实现这个功能,你需要在项目中引用Microsoft.Office.Interop.Excel命名空间,这包含了与Excel进行交互所需的对象库。在代码中,你需要添加以下引用: ```csharp using Excel = Microsoft.Office.Interop.Excel; ``` 函数SaveToExcel的核心部分是接收两个参数,一个是保存路径字符串(string addr),另一个是要写入数据的DataTable对象(DataTable dt)。例如,当用户点击保存按钮(btnSave)时,会调用此函数: ```csharp private void btnSave_Click(object sender, EventArgs e) { SaveToExcel(txtAddress.Text, (DataTable)dgvTable4Output.DataSource); } ``` 在程序初始化阶段,比如在FormMain_Load方法中,你需要创建一个DataTable对象,并设置其结构,这里以"天干地支表"为例: ```csharp private void FormMain_Load(object sender, EventArgs e) { string[] strings1 = {"甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸"}; string[] strings2 = {"子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"}; DataTable dt = new DataTable("天干地支表"); dt.Columns.Add("列0"); dt.Columns.Add("列1"); // ... (其余列的添加) } ``` Load函数部分设置了DataTable的列名和数据,而SaveToExcel函数则负责实际的数据写入Excel工作簿。具体实现可能涉及到创建Excel工作簿、工作表,以及使用Range或Worksheet对象来填充数据。这部分代码通常会包含循环遍历DataTable的行和列,然后逐个单元格写入数据。 总结来说,本文详细展示了如何在C#中利用DataTable和Microsoft.Office.Interop.Excel库将数据导出到Excel表格的过程,包括数据准备、引用管理以及在特定事件触发时执行数据写入操作。通过这个例子,开发者可以轻松扩展和应用到其他需要将DataTable数据导出至Excel的应用场景中。