vb.net导出到excel

前端之家收集整理的这篇文章主要介绍了vb.net导出到excel前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
网了查了一堆资料,自己也写出了到出到excel的方法.记下来.
Try

            Dim errMsg As String = ""
            Dim CheckedCount As Integer = Me.GpDetailListView.CheckedItems.Count
            If CheckedCount < 1 Then
                MsgBox("请选择要导出的项!",MsgBoxStyle.Information,"提示")
                Return
            End If
            Console.WriteLine("选择数量:" & CheckedCount.ToString)

            Me.ExportButton.Text = "正在导出..."
            Me.ExportButton.Enabled = False
            Me.PictureBox1.Visible = True

            If Not My.Computer.FileSystem.DirectoryExists("ExportedExcel") Then
                My.Computer.FileSystem.CreateDirectory("ExportedExcel")
            End If

            Dim strNow As String = Format(Now(),"yyyy_MM_dd_HHmmss").ToString
            Dim strFileName As String = My.Computer.FileSystem.CurrentDirectory & "\ExportedExcel\ExportedGP" & strNow & ".xlsx"
            'System.IO.File.Create(strFileName)

            Dim excelApp = New Excel.Application ' CreateObject("Excel.Application")
            excelApp.Visible = False
            excelApp.DisplayAlerts = False
            Dim excelWorkbook As Excel.Workbook
            Dim misValue As Object = System.Reflection.Missing.Value
            excelWorkbook = excelApp.Workbooks.Add(misValue)
            Dim excelSheet As Excel.Worksheet = excelWorkbook.Worksheets(1)
            excelSheet.Name = "工票信息"
            Dim excelRange As Excel.Range
            excelSheet.Cells(1,1) = "员工"
            excelSheet.Cells(1,2) = "产品类别"
            excelSheet.Cells(1,3) = "工位"
            excelSheet.Cells(1,4) = "数量"
            excelRange = excelSheet.Cells(1,1)
            excelRange.Font.FontStyle = FontStyle.Bold
            excelRange.Font.Size = 12
            excelRange = excelSheet.Cells(1,2)
            excelRange.Font.FontStyle = FontStyle.Bold
            excelRange.Font.Size = 12
            excelRange = excelSheet.Cells(1,3)
            excelRange.Font.FontStyle = FontStyle.Bold
            excelRange.Font.Size = 12
            excelRange = excelSheet.Cells(1,4)
            excelRange.Font.FontStyle = FontStyle.Bold
            excelRange.Font.Size = 12
            excelSheet.

            For i As Integer = 0 To CheckedCount - 1
                Dim CheckItemId As String = Me.GpDetailListView.CheckedItems(i).SubItems.Item(4).Text
                For j As Integer = 0 To Me.dtGpInfo.Rows.Count - 1
                    Dim dtRowId As String = Me.dtGpInfo.Rows(j).Item("id").ToString
                    If CheckItemId = dtRowId Then
                        Dim cnName As String = Me.dtGpInfo.Rows(j).Item("cnName").ToString
                        Dim prdType As String = Me.dtGpInfo.Rows(j).Item("prdType").ToString
                        Dim posName As String = Me.dtGpInfo.Rows(j).Item("posName").ToString
                        Dim count As String = Me.dtGpInfo.Rows(j).Item("count").ToString

                        excelSheet.Cells(j + 2,1) = cnName
                        excelSheet.Cells(j + 2,2) = prdType
                        excelSheet.Cells(j + 2,3) = posName
                        excelSheet.Cells(j + 2,4) = count
                    End If
                Next
            Next
            excelWorkbook.SaveAs(strFileName)
            excelApp.Quit()
            Me.ExportButton.Text = "导出到Excel"
            Me.ExportButton.Enabled = True
            Me.PictureBox1.Visible = False
            MsgBox("导出成功:" & strFileName,MsgBoxStyle.MsgBoxSetForeground,"导出成功")
        Catch ex As Exception
            MsgBox(ex.Message,MsgBoxStyle.Critical,"导出异常")
            Me.ExportButton.Text = "导出到Excel"
            Me.ExportButton.Enabled = True
            Me.PictureBox1.Visible = False
            Return
        End Try

猜你在找的VB相关文章