VB.Net机房收费系统(三层)——将datagirdview 控件数据导入Excel

        在从数据库检索出来数据并显示在datagridview控件上面之后,如何导入到Excel中,机房收费系统的业务功能中也是一个小小的问题。通过实例驱动,分享给大家其中的实现方法

在UI层的用户界面设置如图:导出其中的数据到excel还要借用上一篇博客( 

VB.Net机房收费系统(三层)——用datagirdview 控件显示数据库数据

)当我们用datagrideview 控件显示出来数据之后,添加引用并实现:

Imports Microsoft.Office.Interop

 Private Sub cmdToExcel_Click(sender As Object, e As EventArgs) Handles cmdToExcel.Click
        Dim xlApp, xlBook, xlSheet As Object
        xlApp = CreateObject("Excel.Application")
        xlBook = xlApp.Workbooks.Add
        xlSheet = xlBook.Worksheets(1)
        
        Dim rowindex, colindex As Integer
        rowindex = 1 '行
        colindex = 0 '列
        xlSheet = xlApp.Worksheets("sheet1") '打開sheet1那頁
        Dim a As New DataSet
        Dim table As New System.Data.DataTable
        table = DataGridView1.DataSource
        Dim row As DataRow '定義row為表格的行
        Dim col As DataColumn '定義col為表格的列
        '把表格的每一列寫到EXCEL去
        For Each col In table.Columns
            colindex = colindex + 1
            xlApp.Cells(1, colindex) = col.ColumnName
        Next
        '把表格的每一行寫到EXCEL去
        For Each row In table.Rows
            rowindex = rowindex + 1
            colindex = 0
            For Each col In table.Columns
                colindex = colindex + 1
                xlApp.Cells(rowindex, colindex) = row(col.ColumnName)
            Next
        Next
        xlApp.Visible = True
  End Sub


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
以下是一个简单的示例代码,演示如何将Excel数据导入DataGridView。要使用此代码,您需要添加对Microsoft.Office.Interop.Excel库的引用。 ``` '引用 Excel 库 Imports Microsoft.Office.Interop.Excel '在按钮点击事件执行以下代码 Private Sub btnImport_Click(sender As Object, e As EventArgs) Handles btnImport.Click '打开 Excel 文件 Dim excelApp As New Excel.Application Dim excelBook As Excel.Workbook = excelApp.Workbooks.Open("C:\path\to\your\file.xlsx") '获取第一个工作表 Dim excelSheet As Excel.Worksheet = CType(excelBook.Worksheets(1), Excel.Worksheet) '获取单元格范围 Dim range As Excel.Range = excelSheet.UsedRange '将数据加载到 DataTable Dim dataTable As New DataTable For i As Integer = 1 To range.Rows.Count Dim row As DataRow = dataTable.NewRow() For j As Integer = 1 To range.Columns.Count If i = 1 Then '如果是表头,则将列名添加到 DataTable dataTable.Columns.Add(range.Cells(i, j).Value.ToString()) Else '否则将数据添加到 DataTable 的行 row(j - 1) = range.Cells(i, j).Value.ToString() End If Next If i > 1 Then dataTable.Rows.Add(row) End If Next '将 DataTable 数据加载到 DataGridView dgvData.DataSource = dataTable '释放资源 range.Dispose() excelSheet.Dispose() excelBook.Close() excelApp.Quit() GC.Collect() End Sub ``` 请注意,此代码仅演示了如何将Excel数据加载到DataGridView,您需要根据自己的需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值