PrivateSub btn_excel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_excel.Click
'Export DataGridView to Excel
Dim xlapp As Excel.Application
Dim xlworkbook As Excel.Workbook
Dim xlworksheet As Excel.Worksheet
Dim misvalue AsObject = System.Reflection.Missing.Value
Dim i AsIntegerDim j AsInteger
xlapp = New Excel.Application
xlworkbook = xlapp.Workbooks.Add(misvalue)
xlworksheet = xlworkbook.Sheets("Sheet1")
For i = 0To gv.RowCount - 2For j = 0To gv.ColumnCount - 1
xlworksheet.Cells(i + 1, j + 1) = _
gv(j, i).Value.ToString()
NextNextDim dialog AsNew SaveFileDialog
Dim result As DialogResult = dialog.ShowDialog
Try
xlworksheet.SaveAs(dialog.FileName)
Catch exerr As Exception
EndTry
xlworkbook.Close()
xlapp.Quit()
releaseObject(xlapp)
releaseObject(xlworkbook)
releaseObject(xlworksheet)
EndSubPrivateSub releaseObject(ByVal obj AsObject)
Try
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)
obj = NothingCatch ex As Exception
obj = NothingFinally
GC.Collect()
EndTryEndSub