首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将当前DataGridView行复制到Excel

可以通过以下步骤实现:

  1. 首先,需要引入相关的命名空间:
代码语言:txt
复制
using System;
using System.Data;
using System.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel;
  1. 创建一个方法来复制DataGridView的行到Excel:
代码语言:txt
复制
private void CopyDataGridViewToExcel(DataGridView dataGridView)
{
    // 创建Excel应用程序对象
    Excel.Application excelApp = new Excel.Application();
    excelApp.Visible = true;

    // 创建一个新的工作簿
    Excel.Workbook workbook = excelApp.Workbooks.Add();
    Excel.Worksheet worksheet = workbook.ActiveSheet;

    // 复制DataGridView的列标题到Excel
    for (int i = 1; i <= dataGridView.Columns.Count; i++)
    {
        worksheet.Cells[1, i] = dataGridView.Columns[i - 1].HeaderText;
    }

    // 复制DataGridView的行数据到Excel
    for (int i = 0; i < dataGridView.Rows.Count; i++)
    {
        for (int j = 0; j < dataGridView.Columns.Count; j++)
        {
            worksheet.Cells[i + 2, j + 1] = dataGridView.Rows[i].Cells[j].Value.ToString();
        }
    }

    // 自动调整列宽
    worksheet.Columns.AutoFit();

    // 释放Excel对象
    System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet);
    System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
    System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp);
    worksheet = null;
    workbook = null;
    excelApp = null;

    // 强制垃圾回收
    GC.Collect();
}
  1. 在需要复制DataGridView行到Excel的地方调用该方法:
代码语言:txt
复制
CopyDataGridViewToExcel(dataGridView1);

这样,当前DataGridView的行数据将会被复制到一个新的Excel工作簿中。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 一步一步教你使用AgileEAS.NET基础类库进行应用开发-WinForm应用篇-演示ORM对象与DataGridView的绑定技术-商品字典的另一个实现

    回顾与说明     前面我们把“商品字典”、“商品入库”、“商品库存查询”、“商品入库查询”四个模块已经概括或者详细的演示了一个管理信息系统的典型应用场景,按照原来的打算,WinForm篇的例子系统中的几个模块就告一段落了。     由于好多朋友都问我,你的例子中大量使用ListView控件,很想知道是否可以支持DataGridView控件,所以我就有想到重新用DataGridView写一下“商品字典”模块。 本文内容     关于“商品字典”的实现及其业务应用场景请参见一步一步教你使用AgileEAS.N

    05
    领券