【机房重构】--DatagridView导出Excel

来源:互联网 发布:下载幻灯片软件 编辑:程序博客网 时间:2024/06/06 03:53

DatagridView控件中显示的内容想要导出到Excel中完美保存这个功能经常会用到,我们可以将其抽象出来方法就可以很方便的引用了。怎么实现呢?

1.在U层添加一个引用:


由此 可以看出不仅仅支持导出Excel,还可以导出OneNote,outlook等等……


2.在U层添加一个模块,写导出Excel的方法:

Imports Microsoft.Office.InteropImports System.Windows.FormsModule ImportToExcel    Public Function ImportToExcel(ByVal dgvw As DataGridView) As Boolean        '建立Excel连接        Dim myExcel As New Microsoft.Office.Interop.Excel.Application()        myExcel.Application.Workbooks.Add(True)        myExcel.Visible = True        '定义循环变量,行列变量        Dim intRow As Integer        Dim intColumn As Integer        Dim intTitle As Integer        '添加表头        For intTitle = 0 To dgvw.ColumnCount - 1            myExcel.Cells(1, intTitle + 1) = dgvw.Columns(intTitle).HeaderText        Next intTitle        '通过循环来添加控件中的数据到表格中        For intRow = 0 To dgvw.RowCount - 1            For intColumn = 0 To dgvw.ColumnCount - 1                '由于第一行是表头,所以添加数据时从第二行开始                myExcel.Cells(intRow + 2, intColumn + 1) = dgvw(intColumn, intRow).Value.ToString            Next intColumn        Next intRow        Return True             '添加完毕,返回true    End FunctionEnd Module

3.在具体的窗体中引用这个方法:

 Private Sub btnExcel_Click(sender As Object, e As EventArgs) Handles btnExcel.Click        Call ImportToExcel.ImportToExcel(dgvcharge)        '第一个importToExcel是模块的名称,第二个importToExcel是模块中方法的名称         ' 参数是要导出的是显示的数据datagridview控件名称    End Sub


4.总结:

拒绝重复,能抽象出来就抽象出来多次引用。

原创粉丝点击