c#winform处理excel代码
时间: 2023-12-01 13:04:18 浏览: 64
以下是C# WinForm中处理Excel的示例代码:
1. 首先,在WinForm中添加一个“打开Excel”按钮和一个DataGridView控件。
2. 添加以下命名空间:
```
using Excel = Microsoft.Office.Interop.Excel;
```
3. 在“打开Excel”按钮的Click事件处理程序中添加以下代码:
```
private void btnOpenExcel_Click(object sender, EventArgs e)
{
// 创建Excel应用程序对象
Excel.Application excelApp = new Excel.Application();
// 打开Excel文件
Excel.Workbook workbook = excelApp.Workbooks.Open(@"D:\test.xlsx");
// 获取第一个工作表
Excel.Worksheet worksheet = workbook.Sheets[1];
// 获取工作表中的数据
Excel.Range range = worksheet.UsedRange;
// 将数据加载到DataGridView控件中
object[,] values = range.Value;
int rowCount = values.GetLength(0);
int colCount = values.GetLength(1);
DataTable dt = new DataTable();
for (int i = 1; i <= colCount; i++)
{
dt.Columns.Add(values[1, i].ToString());
}
for (int i = 2; i <= rowCount; i++)
{
DataRow dr = dt.NewRow();
for (int j = 1; j <= colCount; j++)
{
dr[j - 1] = values[i, j];
}
dt.Rows.Add(dr);
}
dataGridView1.DataSource = dt;
// 关闭Excel应用程序
excelApp.Quit();
}
```
上述代码会打开名为“test.xlsx”的Excel文件,获取第一个工作表中的数据,并将其加载到DataGridView控件中。
需要注意的是,上述代码使用了Microsoft.Office.Interop.Excel命名空间,因此需要引用Microsoft Excel 16.0 Object Library组件。可以在Visual Studio中右键单击项目,在“添加”->“引用”中找到该组件并添加。
另外,需要注意在使用完Excel应用程序对象后及时调用Quit方法关闭应用程序,否则会出现Excel进程没有正确关闭的问题。