将数据从DataGridView导出到Excel
将数据从DataGridView导出到Excel,并设置是否要导出隐藏的列
Public Function ExportExcel(ByVal dgv As DataGridView, ByVal IsOnlyVisible As Boolean) As Boolean
Try
Dim n, i, j, row, col As Integer
Dim excel As Excel.Application = New Excel.Application()


excel.Application.Workbooks.Add(True)
col = 1
'//记录列名
For n = 0 To dgv.ColumnCount - 1
If IsOnlyVisible Then
If dgv.Columns(n).Visible Then
excel.Cells(1, col) = dgv.Columns(n).HeaderText
col = col + 1
End If
Else
excel.Cells(1, n + 1) = dgv.Columns(n).HeaderText
End If

Next
'//记录内容
row = 2
' col = 1

For i = 0 To dgv.RowCount - 1
col = 1
For j = 0 To dgv.ColumnCount - 1
'System.Windows.Forms.Application.DoEvents()
If IsOnlyVisible Then
If dgv.Columns(j).Visible Then
excel.Cells(i + 2, col) = dgv.Rows(i).Cells(j).Value
col = col + 1
End If
Else
excel.Cells(i + 2, j + 1) = dgv.Rows(i).Cells(j).Value
End If
Next

Next
excel.Visible = True
Catch ex As Exception
Throw ex
End Try
End Function












































【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步