Microsoft.Office.Interop.Excel.Application myExcel = new Microsoft.Office.Interop.Excel.Application(); //生成一个excel对象
Microsoft.Office.Interop.Excel.Workbook workbook = myExcel.Workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet); //生成一个workbook对象
Microsoft.Office.Interop.Excel.Worksheet Sheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];//取得第一个 sheet
Object Nothing = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Excel.Worksheet Sheet1 = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets.Add(Nothing, Sheet, Nothing, Nothing);//添加一个sheet 即第二个sheet 其中第一个参数表示 添加的位置在哪个sheet之前;第二个说在之后;第三个是要新建的工作表的数目,默认值为 1;第四个指定工作表类型,类型值可为:xlWorksheet、xlChart、xlExcel4MacroSheet 或 xlExcel4IntlMacroSheet.
//第一行的样式
Microsoft.Office.Interop.Excel.Range range1 = Sheet.get_Range(Sheet.Cells[1, 1], Sheet.Cells[1, column.Length]);//第一行
//range1.Interior.ColorIndex = 15;//15代表灰色
range1.Font.Bold = true; //字体加粗
range1.Font.Size = 14;//字体大小
range1.RowHeight = 20;//行高
range1.MergeCells = true;//合并单元格
range1.VerticalAlignment = XlVAlign.xlVAlignCenter;//上下居中
range1.HorizontalAlignment = XlHAlign.xlHAlignCenter;//左右居中
////为第一个sheet报表填充数据
if (dt != null)
{
tot = 2 * (dt.Rows.Count + 2) - 2; //画excel数据开始位置
if (dt.Rows.Count > 0)
{
int n = 0;
for (iRow = 3; iRow <= tot; iRow++)
{
int rw = iRow;
iCol = 1;