ASP.NET 导出EXCEL

it2022-05-09  29

采用.Net Excel组件导出 EXCEL文件, ///   <summary>          ///  导出Excel         ///   </summary>          ///   <param name="source"> 需要导出的数据 </param>          ///   <param name="exportFullPath"> 导出Excel文件的全路径 </param>          ///   <param name="hasHeadline">如果  true则生成表头  </param>          private   void  ExportExcel(DataTable source,  string  exportFullPath,  bool  hasHeadline)        {                         #region  采用.Net Excel组件导出             Application objExcel  =   new  Application();             if  (objExcel  ==   null )            {                 throw   new  Exception( " ERROR: You must install Microsoft Excel Application! " );            }             // 创建一个Excel文件(未保存,无文件名)             Workbooks objWorkbooks  =  objExcel.Workbooks;            _Workbook objWorkbook  =  objWorkbooks.Add(XlWBATemplate.xlWBATWorksheet);  // 默认创建sheet1             // 取得Sheet1             Sheets objSheets  =  objWorkbook.Worksheets;            _Worksheet objWorksheet  =  (_Worksheet)objSheets.get_Item( 1 );             // 写入标题              int  intDataBeginRow  =   1 ;             if  (hasHeadline)            {                 for  ( int  i  =   0 ; i  <  source.Columns.Count; i ++ )                {                    objWorksheet.Cells[ 1 , i  +   1 =  source.Columns[i].ColumnName.Trim();                }                 // 数据起始行加1                 intDataBeginRow ++ ;            }             // 写入数据,Excel的索引是从1开始的              for  ( int  j  =   0 ; j  <  source.Rows.Count; j ++ )            {                 for  ( int  k  =   0 ; k  <  source.Columns.Count; k ++ )                {                    objWorksheet.Cells[j  +  intDataBeginRow, k  +   1 =  source.Rows[j][k].ToString();                }            }            objWorksheet.Hyperlinks.Delete();  // 去掉超链             // 保存文件(如果使用objWorkbook.SaveAs将不兼容excel2000,excelxp)             objWorkbook._SaveAs(exportFullPath, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value, Missing.Value);             // 关闭文件,释放资源             objWorkbook.Close( false , exportFullPath,  false );            objExcel  =   null ;             #endregion         } 直接调用ExportExcel 即可

转载于:https://www.cnblogs.com/kaiwind/archive/2008/04/22/1165821.html

相关资源:ASP.NET导出EXCEL超高兼容

最新回复(0)