C# DataGridView 导出到 Excel:完整代码示例
以下是使用 C# 将 DataGridView 导出到 Excel 的示例代码:
- 首先,您需要添加以下名称空间:
using System.IO;
using System.Windows.Forms;
using Microsoft.Office.Interop.Excel;
- 创建一个方法来将 DataGridView 导出到 Excel:
private void ExportToExcel(DataGridView dataGridView)
{
// 创建 Excel 对象
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
Workbook workbook = excel.Workbooks.Add(Type.Missing);
Worksheet worksheet = null;
try
{
// 创建工作表并设置名称
worksheet = workbook.ActiveSheet;
worksheet.Name = 'Exported from gridview';
int cellRowIndex = 1;
int cellColumnIndex = 1;
// 循环遍历 DataGridView 并将数据写入 Excel
for (int i = 0; i < dataGridView.Rows.Count - 1; i++)
{
for (int j = 0; j < dataGridView.Columns.Count; j++)
{
if (cellRowIndex == 1)
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = dataGridView.Columns[j].HeaderText;
}
else
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = dataGridView.Rows[i].Cells[j].Value.ToString();
}
cellColumnIndex++;
}
cellColumnIndex = 1;
cellRowIndex++;
}
// 保存 Excel 文件
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = 'Excel files (*.xlsx)|*.xlsx|All files (*.*)|*.*';
saveFileDialog.FilterIndex = 2;
saveFileDialog.RestoreDirectory = true;
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
workbook.SaveAs(saveFileDialog.FileName);
MessageBox.Show('导出成功!', '导出到 Excel');
}
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message, '错误', MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
excel.Quit();
workbook = null;
excel = null;
}
}
- 调用此方法来导出 DataGridView:
ExportToExcel(dataGridView1);
注意:此方法将创建一个 SaveFileDialog,以允许用户选择要保存 Excel 文件的位置和名称。如果您不想使用此对话框,可以直接将文件路径和名称硬编码到代码中。
其他相关主题:
- C# DataGridView 操作
- C# Excel 操作
- C# 文件操作
- C# 界面设计
- C# 编程入门
原文地址: https://www.cveoy.top/t/topic/nGTr 著作权归作者所有。请勿转载和采集!