【机房个人重构】导出Excel

来源:互联网 发布:2015云计算市场规模 编辑:程序博客网 时间:2024/05/22 00:45

            将datagridview的数据导出到Excel中,可供用户编辑与查看,这是一个很棒的功能,用户也需要这样的功能,那么,怎么导出呢?我的机房收费系统里面有很多个窗体有导出excel的功能,如果要实现这个功能,首先,我不能做复制粘贴的工作,还是那句话,当一件事情,重复2遍之后,就要思考如何抽象,简单化,让我们始终做有意义的事情,不做低效能的事。


      下面,我来具体讲解一下,如何将datagridview的数据导出到Excel 里面。


      首先,在U层添加一个引用:

      


       由这里还可以看出,不仅可以导出Excel ,导出其他形式也是可以的,需要我们多多动手了~


       之后,建立一个模块来写具体的功能:

       

Imports Microsoft.Office.InteropImports System.Windows.FormsModule ImportToExcel    Public Function ImportToExcel(ByVal gvw As DataGridView) As Boolean '导出到Excel函数          '建立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 gvw.ColumnCount - 1            myExcel.Cells(1, intTitle + 1) = gvw.Columns(intTitle).HeaderText        Next intTitle        '通过循环来添加控件中的数据到表格中            For intRow = 0 To gvw.RowCount - 1            For intColumn = 0 To gvw.ColumnCount - 1                '由于第一行是表头,所以添加数据时从第二行开始                  myExcel.Cells(intRow + 2, intColumn + 1) = gvw(intColumn, intRow).Value.ToString            Next intColumn        Next intRow        Return True  '添加完毕,返回true        End FunctionEnd Module
         模块的代码写完之后,我们就可以在别的窗体里面,调用它了,就不用再每个窗体里面写这样一大串的代码了。


         具体的窗体的代码如下:         

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click        Call ImportToExcel.ImportToExcel(DataGridView1)'importToExcel是我的模块的名称    End Sub
        

         这样就完美的实现了导出EXCEl.我们要做的不仅仅是功能的实现,而是应该多思考,为什么要用这个功能,什么时候用,怎么用,不做代码的搬运工。

0 0
原创粉丝点击