B/S结构下用vb.net怎样将Datagrid中的数据导出到excel中?(在线急等)解决方法

B/S结构下用vb.net怎样将Datagrid中的数据导出到excel中?(在线急等)
小弟在B/S结构下想通过一个按钮实现datagrid中数据的导出,不知有源码否?我用的是vb.net开发的程序,在线急等!!!!

------解决方案--------------------
我可是研究了半个多月当初才写出来的
可以直接使用
Sub PrintData(ByVal sqlstr As String, ByVal FID As Integer)
Dim I As Integer
Dim myTable As New DataTable
Try
myTable = DataAccess.GetDataTableBySearch(sqlstr & FID)
Catch ex As Exception
myTable.Rows.Clear()
End Try
If myTable.Columns.Count <= 0 Then Exit Sub
Dim intStr As Integer = 0

Dim RBArr() As String = { "Code ", "MaterialID ", "Totality ", "TransactFlag ", "IDDetailsID ", "InDepotID ", "ConsultTable ", "ConsultIDName ", "ConsultID ", "DepotName "}

For I = 0 To RBArr.GetUpperBound(0)
myTable.Columns.Remove(RBArr(I))
Next

Dim TempName As String
Dim myExcel As New Excel.Application
Dim myBooks As Excel.Workbooks, myBook As Excel.Workbook
Dim mySheets As Excel.Sheets, mySheet As Excel.Worksheet
Dim myFile As String, myTemplate As String
TempName = "入库单列表 " + System.DateTime.Now.ToString( "yyyyMMddHHmm ") + ".xls "
myFile = Server.MapPath(Request.ApplicationPath + "/thmrpTempFile/ ") & TempName
myTemplate = Server.MapPath(Request.ApplicationPath + "/ExcelTemplate/入库单列表模板.xls ")

myExcel.Visible = False
myExcel.DisplayAlerts = False
myBooks = myExcel.Workbooks
myBooks.Open(myTemplate)
myBook = myBooks.Item(1)
mySheets = myBook.Worksheets
mySheet = CType(mySheets.Item(1), Excel.Worksheet)
mySheet.Name = "入库单列表 "
Call Me.ClearTempFile()
Session( "tempFilePath ") = myFile.Trim

intStr = ExportDumpData(myTable, mySheet) '调用过程填充数据

sqlstr = "select e.PointName,F.UserName,e.LogDate From (select b.PointName,a.TransactUser,a.LogDate,a.Idea from (select * from StockInDepotLogVIEW where TableID = " & FID & " ) as a left join (select * from Sys_BillFlow where BillId = 7) as b ON a.FlowRolesID = b.BillFlowId) as e left Join Sys_UserInfo as F on e.TransactUser = f.UserId "
Try
myTable = DataAccess.GetDataTableBySearch(sqlstr)
Catch ex As Exception
Exit Try
End Try
If myTable.Rows.Count > 0 And intStr > 0 Then
ExportDumpFlow(myTable, mySheet, intStr)
End If

Try
mySheet.SaveAs(myFile) '另存excel文件
myBook.Close()
Catch ex As Exception
Exit Sub
Finally
System.GC.Collect()
myExcel.Quit()
End Try

Dim myStr As String = " "
Dim openWinStrBud As New System.Text.StringBuilder( " ")
TempName = "/thmrpTempFile/ " & TempName
openWinStrBud.Append( "File:///// ")
openWinStrBud.Append(Page.Server.MachineName)
openWinStrBud.Append(TempName)
myStr = " <script language=javascript> try{var wsh = new ActiveXObject( 'WScript.Shell ');wsh.Run( ' " & openWinStrBud.ToString & " ');}catch(e){alert( '对不起,不能打开文件,请将Internet Explorer 浏览器的安全级别设置为低! ');} </script> "

If myStr.Trim.Length > 0 Then