从数据库中导出C#创建Excel文件(含Interop.Excel.Dll)是我们在实际开发中遇到的问题,那么如何解决呢?是用什么方法可以实现呢,下面我们通过实例的演示向你具体介绍下。
C#创建Excel文件实现实例:
- //创建一个excel application
- Excel.Application xls_exp=null;
- int rowindex=1;
- int colindex=0;
- //创建一个workbook,一个worksheet
- Excel._Workbook xls_book=null;
- Excel._Worksheet xls_sheet=null;
- try
- {
- xls_exp=new Excel.ApplicationClass();
- xls_book=xls_exp.Workbooks.Add(true);
- xls_sheet=(Excel._Worksheet)xls_book.ActiveSheet;
- //C#创建Excel文件之取得数据
- DataTable aa=GetData();
- //将所得到的表的列名,赋值给单元格
- foreach(DataColumn col in aa.Columns)
- {
- colindex++;
- xls_exp.Cells[1,colindex]=col.ColumnName;
- //水平对齐
- xls_sheet.get_Range(xls_exp.Cells[1,colindex],
- xls_exp.Cells[1,colindex]).HorizontalAlignment=
- Excel.XlVAlign.xlVAlignCenter;
- //C#创建Excel文件之垂直对齐
- xls_sheet.get_Range(xls_exp.Cells[1,colindex],
- xls_exp.Cells[1,colindex]).VerticalAlignment=
- Excel.XlVAlign.xlVAlignCenter;
- //行高、列宽自适应
- //xls_sheet.Cells.Rows.AutoFill();
- //xls_sheet.Cells.Columns.AutoFill();
- }
- //同样方法处理数据
- foreach(DataRow row in aa.Rows)
- {
- rowindex++;
- colindex=0;
- foreach(DataColumn col in aa.Columns)
- {
- colindex++;
- switch (row[col.ColumnName].GetType().ToString())
- {
- //字符
- case ("System.String"):
- //数字格式设置为文本
- xls_sheet.get_Range(
- xls_exp.Cells[rowindex,colindex],
- xls_exp.Cells[rowindex,colindex]).NumberFormatLocal="@";
- //C#创建Excel文件之水平对齐
- xls_sheet.get_Range(
- xls_exp.Cells[rowindex,colindex],
- xls_exp.Cells[rowindex,colindex]).HorizontalAlignment=
- Excel.XlVAlign.xlVAlignCenter;
- //垂直对齐
- xls_sheet.get_Range(
- xls_exp.Cells[rowindex,colindex],
- xls_exp.Cells[rowindex,colindex]).VerticalAlignment=
- Excel.XlVAlign.xlVAlignCenter;
- break;
- //日期
- case("System.DateTime"):
- //数字格式设置为yyyy-mm-dd hh:mm:ss日期
- xls_sheet.get_Range(
- xls_exp.Cells[rowindex,colindex],
- xls_exp.Cells[rowindex,colindex]).
- NumberFormatLocal="YYYY-MM-DD HH:MM:SS";
- break;
- }
- //C#创建Excel文件之给cell赋值
- xls_exp.Cells[rowindex,colindex]=row[col.ColumnName];
- }
- }
- //不可见,即后台处理
- xls_exp.Visible=true;
- catch(Exception err)
- {
- MessageBox.show(err.Message);
- }
- //finally
- //{
- //xls_exp.Quit();
- //}
C#创建Excel文件的基本内容就向你介绍到这里,希望对你了解C#创建Excel文件有所帮助。
【编辑推荐】