从DataGridView中将数据导出Excel(vb.net)

DataGridView中将数据导出Excel

Public Sub ExportExcel(ByVal dgv As DataGridView, ByVal isonlyvisible As Boolean)

Try

Dim n, i, j, row, col As Integer

Dim excel As New Microsoft.Office.Interop.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

For i = 0 To dgv.RowCount - 1

col = 1

For j = 0 To dgv.ColumnCount - 1

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 Sub

你可能感兴趣的:(datagridview)