asp.net 呼叫 excel 元件
Asp.net 如何呼叫 Excel ?
1. 引用 Microsoft.Office.Interop.Excel.dll,自動包裝成Interop.Microsoft.Office.Interop.Excel.dll
2. 程式碼:
///
/// 生成 excel 報表
///
private void CreateExcelReport()
{
string xlTemplateFullPath = Server.MapPath("~/Function/Business/ExcelTemplate/OTOCFPY.xls");
string xlSavePath = Server.MapPath("~/Function/Business/ExcelReport");
_Application xlApp = null;
_Workbook xlWorkbook = null;
_Worksheet xlWorksheet = null;
System.Reflection.Missing Missing = System.Reflection.Missing.Value;
try
{
xlApp = new ApplicationClass();
xlWorkbook = xlApp.Workbooks.Open(xlTemplateFullPath ,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing,
oMissing);
xlWorksheet = (Worksheet)xlWorkbook.Worksheets[1];
xlSavePath = Path.Combine(xlSavePath, DateTime.Now.Ticks.ToString());
//寫入excel資料
WriteData(xlWorksheet );
xlWorkbook.SaveAs(xlSavePath, oMissing, oMissing, oMissing, oMissing,
oMissing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, oMissing, oMissing, oMissing,
oMissing, oMissing);
xlApp.Visible = true;
xlApp.Quit();
//傳送excel 檔案到客戶端
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/ms-excel";
Response.AppendHeader("Content-Disposition", "attachment;filename=todayDownList.xls");
System.IO.FileInfo fileInfo = new FileInfo(xlSavePath+".xls" );
Response.AddHeader("Content-Length", fileInfo.Length.ToString());
Response.WriteFile(fileInfo.FullName);
Response.End();
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
xlApp = null;
GC.Collect();
}
}
注意點
用完excel後一定要釋放excel
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-589266/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【Myrat】用asp.net呼叫excel並輸出的一點經驗ASP.NETExcel
- c#中呼叫ExcelC#Excel
- Asp.net 匯出ExcelASP.NETExcel
- 在vb元件內呼叫excel2000實現GIF餅圖 (轉)元件Excel
- Angular元件——父元件呼叫子元件方法Angular元件
- asp.net Excel匯出方法ASP.NETExcel
- Vue 子元件呼叫父元件方法總結Vue元件
- 利用Delphi 5中呼叫Excel 97 (轉)Excel
- ASP.NET MVC 5呼叫其他ActionASP.NETMVC
- ASP.NET MVC 匯入Excel檔案ASP.NETMVCExcel
- ASP.NET Excel匯入和匯出ASP.NETExcel
- vue 父子元件的方法呼叫Vue元件
- 微服務呼叫元件 Feign微服務元件
- 埋坑一: vue中子元件呼叫兄弟元件方法Vue元件
- hooks父元件怎麼呼叫子元件的方法?Hook元件
- vue子元件怎麼呼叫父元件的方法Vue元件
- 使用Excel呼叫ABAP系統的函式Excel函式
- JQuery呼叫asp.net的後臺方法jQueryASP.NET
- asp.net 利用NPOI匯出Excel通用類ASP.NETExcel
- sketchup 動態元件 在上級元件呼叫下級元件屬性元件
- java呼叫ACTIVEX控制元件Java控制元件
- c# 中呼叫COM元件 (轉)C#元件
- asp.net 呼叫echarts顯示圖表控制元件隨瀏覽器自適應解決方案ASP.NETEcharts控制元件瀏覽器
- ASP.NET如何定時呼叫WebService服務ASP.NETWeb
- ASP.NET AJAX中的非同步PageMethod呼叫ASP.NET非同步
- Asp.Net前臺呼叫後臺變數ASP.NET變數
- Asp.net下自動呼叫Word的例項ASP.NET
- 可怕的ASP.NET郵件元件ASP.NET元件
- React講解 - 父元件呼叫子元件內容【更新中】React元件
- Vue元件開發實錄:元件的三種呼叫方式Vue元件
- C#中簡單的元件呼叫C#元件
- vc6.0呼叫excel xp,word 2k (轉)Excel
- ASP.NET AJAX中的非同步Web Services呼叫ASP.NET非同步Web
- Blazor入門:ASP.NET Core Razor 元件BlazorASP.NET元件
- [譯]ASP.NET Core 2.0 檢視元件ASP.NET元件
- 新ASP.NET圖表控制元件ASP.NET控制元件
- 介紹ASP.NET控制元件IDASP.NET控制元件
- 在ASP.NET中使用.NET元件 (轉)ASP.NET元件