两种方法DatagridView轻松导入到Excel

众所周知,DatagridView控件来处理表各类数据真的是“简单、方便、疗效快”,因此备受广大民众喜爱。今天我们再来继续探讨一下有关它和Excel的“姊妹情深”。

几乎没有人不对Excel不了解,但要说熟悉和认识透彻恐怕我们还远远没有做到(这是题外之言),重点还是Excel的强大数据处理能力带给我们的便利,所以把DatagridView数据表变为老少皆宜的Excel表格就显得尤为重要了。

其实这一转换也很简单,下面就为大家介绍下两种方法,轻松连接“姊妹情”。

方法一:

这种方法不需要任何加载和引用,只是纯代码,执行效率比较高。

 Public Function ExportExcel(ByVal gvw As DataGridView) As Boolean '导出到Excel函数
        Try
            If gvw.Rows.Count <= 0 Then '判断记录数,如果没有记录就退出
                MessageBox.Show("没有记录可以导出", "没有可以导出的项目", MessageBoxButtons.OK, MessageBoxIcon.Information)
                Return False
            Else                        '如果有记录就导出到Excel
                Dim objCreateExcel As Object
                Dim objAddExcel As Object
                objCreateExcel = CreateObject("Excel.Application") '创建Excel对象
                objAddExcel = objCreateExcel.workbooks.add()
                Dim intTitle As Integer
                Dim intRow As Integer
                Dim intColumn As Integer '定义循环变量,行列变量

                '把表头写入Excel
                For intTitle = 0 To gvw.Columns.Count - 1
                    objAddExcel.worksheets(1).cells(1, intTitle + 1) = gvw.Columns(intTitle).HeaderCell.Value
                Next

                '用循环添加数据
                For intRow = 0 To gvw.Rows.Count - 1 '行循环
                    For intColumn = 0 To gvw.Columns.Count - 1 '列循环
                        objAddExcel.worksheets(1).cells(intRow + 2, intColumn + 1) = gvw.Item(intColumn, intRow).Value.ToString
                    Next
                Next

                objAddExcel.worksheets(1).Cells.EntireColumn.AutoFit() '自动调整Excel列
                objCreateExcel.visible = True '设置Excel可见作为Excel工作表名称
                objAddExcel = Nothing '释放资源
                objCreateExcel = Nothing '释放资源
            End If
            Return True
        Catch ex As Exception '错误处理
            MessageBox.Show(Err.Description.ToString, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error) '出错提示
            Return False
        End Try
    End Function

方法二:需要引用.NET FrameWork程序集下的Office,但代码较少,具体如下:

1、添加引用(如图)

然后选择

2、代码

Imports Microsoft   ‘添加引用
Module mdlText
    Public Function ExportExcel(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 Function 
EndModule

虽然和第一次做收费系统相比简单了很多,但这个功能由于存在着普遍性和良好的通用性,还是需要我们认真对待。如何做到最大化的方便用户使用才是我们的最终目标。

两种方法DatagridView轻松导入到Excel

时间: 2024-10-29 19:06:32

两种方法DatagridView轻松导入到Excel的相关文章

两种方法,轻松上手ConfigMap!

属性配置文件在任何应用程序中都非常重要.它们不仅可以让应用程序具备灵活性,还能够根据文件中配置的值产生不同的功能.实际上,在staging.开发.测试.UAT或生产环境中,我们都使用属性配置文件来驱动不同的行为. 通常情况下,属性配置文件会与代码一起打包,并且整个程序包都部署在执行环境中.这一方法中,如果你想更改任何配置(即便配置文件中也发生了更改),你需要重新发布代码.尽管这种方法行之有效,但是对于现在而言,效率还是太低了.因此我们需要一种外部化的配置. 在本文中,我将阐述Kubernetes

PDF转PPT?只需这两种方法,轻松完成转换

在我们的日常工作中,对于PDF转PPT的转换操作我们应该都不陌生,那么你们日常是怎么完成这样的转换操作的呢?小编今天在这里准备了俩种操作方法,下面分享给大家,希望本次分享的PDF转PPT的分享内容对你们有所帮助哟~操作方法1:Step 1.首先我们会借助到一款在线转换工具,图示,在工具中的[文档转换]下拉框选择[PDF转PPT].Step 2.这里是选择转换功能以后跳转到的操作页面,当前页面中可以对转换的格式参数进行自定义设置.Step 3.然后再来添加所需要进行转换的PDF文件,点击[点击选择

DataGridView显示数据的两种方法

1.简单介绍 DataGridView空间是我们常用的显示数据的控件,它有极高的可配置性和可扩展性. 2.显示数据 DataGridView显示数据一般我们常用的有两种方法,一种是直接设置DataSoure属性就可以绑定数据.此方法不需要写任何代码操作比较简单,但是它显示出来的是整张表的数据.如果整一表数据比较多,而且我们并不需要所有的数据的情况下,我们就应该考虑第二种方法了.通过写代码连接数据库并从数据库中读取数据,最后将返回的数据传给DataGridView.这种方法貌似比较复杂,但是它只显

DataGridView编辑后立即更新到数据库的两种方法

DataGridView控件是微软预先写好的一个显示数据的控件,功能非常强大,可以显示来自数据库表的数据和XML等其他来源的数据.最近在做一个迷你超市管理系统,要大量用到这个控件.所以花时间好好研究了下. 这是迷你超市管理系的库存数据DataGridView,用户一定会想如果能直接在DGV中修改数据就好了. 是的,这是一个很好的想法,这个功能微软早就帮我们想到了,现在可以使两种方法加以实现.下面就来介绍一下他们. 第一张方法:基于DataAdapter对象创建一个CommandBulider,用

delphi 读取excel 两种方法

http://www.cnblogs.com/ywangzi/archive/2012/09/27/2705894.html 两种方法,一是用ADO连接,问题是Excel文件内容要规则,二是用OLE打开,但操作就没有象 操作数据库那么方便了. 一.用ADO连接: 设置属性ConnetionString 选择 Microsoft Jet 4.0 OLE DB provider Select or enter a datasorce name -> 选择你要打开Excel文件 User name默认

忘记linux中root密码怎么办?两种方法两步教你轻松搞定修改新的密码(仅限CentOS6.X)

忘记了Linux的系统管理员密码时,可以在本地通过进入单用户模式来重置root密码.两种方法(只需两步)具体步骤如下: 方法一: 在进入grub启动菜单的时候 按"a" 键操作编辑 kernel 参数后面加"single"告诉linux内核以单用户模式运行,回车启动即可.进去后,在命令行输入passwd回车,输入新的密码,重复输入,搞定.重启后输入新的密码即可登录.(注:grub界面时间很短,大概5秒,把握机会,如果不想等的话,在linux启动的时候随便按下一个键例

Linux中生成密钥的两种方法

Linux中生成密钥的两种方法 SSH服务支持一种安全认证机制,即密钥认证.所谓的密钥认证,实际上是使用一对加密字符串,一个称为公钥(publickey), 任何人都可以看到其内容,用于加密:另一个称为密钥(privatekey),只有拥有者才能看到,用于解密.通过公钥加密过的密文使用密钥可以轻松解密,但根据公钥来猜测密钥却十分困难. ssh的密钥认证就是使用了这一特性.服务器和客户端都各自拥有自己的公钥和密钥.如何使用密钥认证登录linux服务器呢? 在使用密钥认证远程登入linux之前,我们

pdf文件怎么修改 修改PDF文件的两种方法

都说PDF格式的文件不能修改,我就呵呵了!不管你们信不信,反正我是不信.因为我会修改PDF文件,并且方法还不止一种.想知道我是怎么修改PDF文件的吗?下面我就告诉大家修改PDF文件的两种方法. 方法一 1.方法一就是将PDF文件转换成一种可容易编辑的文档,如:word.excel.ppt等格式,然后再进行编辑,编辑好后再将其转换成PDF格式,是不是很简单!具体是该如何转换的,下面有详细教程. 2.下载一个PDF转换器,并将它安装在电脑上.工具最好是支持双向转换的那种,如:http://www.x

在ArcEngine下实现图层属性过滤的两种方法

转自chanyinhelv原文 在ArcEngine下实现图层属性过滤的两种方法 有时候,我们要对图层上的地物进行有选择性的显示,以此来满足实际的功能要求. 按下面介绍的方法可轻松实现图层属性过滤显示: 1.当图层已经加载时 private void ShowByFilter(AxMapControl sMapCtr, IFeatureLayer sFlyr, string sFilter) { ESRI.ArcGIS.Carto.IFeatureLayerDefinition pDef = (