首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

OWC怎么生成多sheet

2014-01-15 
OWC如何生成多sheet?如题,OWC如何生成多sheet的excel文件?并且打开? DataTable dt new DataTable()dt.C

OWC如何生成多sheet?
如题,OWC如何生成多sheet的excel文件?并且打开?

 DataTable dt = new DataTable();
            dt.Columns.Add("ID");
            dt.Columns.Add("Name");
            dt.Columns.Add("Age");
            dt.Columns.Add("Sex");

            DataRow dr = dt.NewRow();
            dr["ID"] = "1001";
            dr["Name"] = "李明";
            dr["Age"] = "15";
            dr["Sex"] = "男";
            dt.Rows.Add(dr);
            DataRow dr1 = dt.NewRow();
              dr1["ID"] = "1002";
            dr1["Name"] = "Janney";
            dr1["Age"] = "15";
            dr1["Sex"] = "女";
            dt.Rows.Add(dr1);
            DataRow dr2 = dt.NewRow();
            dr2["ID"] = "1003";
            dr2["Name"] = "Daneey";
            dr2["Age"] = "15";
            dr2["Sex"] = "男";
            dt.Rows.Add(dr2);
            Microsoft.Office.Interop.Owc11.SpreadsheetClass sheet = new Microsoft.Office.Interop.Owc11.SpreadsheetClass();

            ChartSpace myspace = new ChartSpace();
            OWC.SpreadsheetClass myexcel = new OWC.SpreadsheetClass();
            OWC.Worksheet mysheet = myexcel.ActiveSheet;
            
            mysheet.Cells[1, 1] = "报表测试";
            for (int i = 0; i < dt.Columns.Count; i++)
            {
                mysheet.Cells[2, 1 + i] = dt.Columns[i].Caption;

            }

            for (int j = 0; j < dt.Rows.Count; j++)
            {
                mysheet.Cells[j + 3, 1] = dt.Rows[j][0].ToString();
                mysheet.Cells[j + 3, 2] = dt.Rows[j][1].ToString();
                mysheet.Cells[j + 3, 3] = dt.Rows[j][2].ToString();
                mysheet.Cells[j + 3, 4] = dt.Rows[j][3].ToString();
            }
            mysheet.get_Range(mysheet.Cells[1, 1], mysheet.Cells[1, dt.Columns.Count]).set_MergeCells(true);
            mysheet.get_Range(mysheet.Cells[1, 1], mysheet.Cells[1, 1]).Font.set_Bold(true);
            mysheet.get_Range(mysheet.Cells[1, 1], mysheet.Cells[1, 1]).Font.set_Size(16);
            mysheet.get_Range(mysheet.Cells[1, 1], mysheet.Cells[1, 1]).Font.set_ColorIndex(3);

            mysheet.get_Range(mysheet.Cells[1, 1], mysheet.Cells[dt.Rows.Count + 1, dt.Columns.Count]).Borders.set_LineStyle(OWC.XlLineStyle.xlContinuous);
            mysheet.get_Range(mysheet.Cells[1, 1], mysheet.Cells[dt.Rows.Count + 1, dt.Columns.Count]).set_VerticalAlignment(OWC.XlVAlign.xlVAlignCenter);

            myexcel.Export(@"d:\test1.xls", OWC.SheetExportActionEnum.ssExportActionOpenInExcel, OWC.SheetExportFormat.ssExportXMLSpreadsheet);


[解决办法]
支持一下,我不懂哈

热点排行