伊莉討論區
標題:
VB.NET無法產生EXCEL檔
[打印本頁]
作者:
天兵才子
時間:
2015-2-22 08:43 AM
標題:
VB.NET無法產生EXCEL檔
提示:
作者被禁止或刪除 內容自動屏蔽
作者:
Jeepluo
時間:
2015-2-24 04:52 PM
輸出時不是檔名一樣就可以了,以下是我很久以前寫的提供你參考一下
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
'Confirms that an HtmlForm control is rendered for the specified ASP.NET
' server control at run time. */
' 我是不知這函數做什麼用, 但還不能少了這個部份
End Sub
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim dDate As String = Replace(FormatDateTime(Now, 2), "/", "")
' 匯出的檔名, 不能用中文哦!會變亂碼
Dim PrnFileName As String = "LogType-" & Replace(FormatDateTime(Now, 2), "/", "") & ".xls"
' --- Excel 輸出的部份 -----------------------------------------------------------------------
Response.Clear()
Response.AddHeader("content-disposition", "attachment;filename=" & PrnFileName)
Response.Charset = "BIG5"
Response.ContentEncoding = System.Text.Encoding.GetEncoding("BIG5")
Response.Cache.SetCacheability(HttpCacheability.NoCache)
Response.ContentType = "application/vnd.ms-excel"
Dim stringWrite As System.IO.StringWriter = New System.IO.StringWriter()
Dim htmlWrite As System.Web.UI.HtmlTextWriter = New HtmlTextWriter(stringWrite)
'-----------------------------------------------------------------------------------------------
' 讀取另一個已有的SqlDateSource 的設定
Dim sds As New SqlDataSource(Me.SqlDataSource2.ConnectionString, "")
sds.SelectCommand = Me.SqlDataSource2.SelectCommand
sds.DataSourceMode = SqlDataSourceMode.DataSet
Dim dv As Data.DataView = sds.Select(New DataSourceSelectArguments)
' 啟動 GridView
Me.GridViewToExcel.DataSource = dv
Me.GridViewToExcel.DataBind()
' --- Excel 輸出的部份 -----------------------------------------------------------------------
Me.GridViewToExcel.RenderControl(htmlWrite)
Response.Write(stringWrite.ToString())
Response.End()
'-----------------------------------------------------------------------------------------------
End Sub
複製代碼
歡迎光臨 伊莉討論區 (http://aaa.eyny.com/)
Powered by Discuz!