C#操作Excel

必须:添加引用“using Excel = Microsoft.Office.Interop.Excel;”(手动添加引用:右键--添加引用--。net--excel)

关键:创建Excel各个对象模型

        private Excel.Application excel; //Excel的当前工作环境
        private Excel.Workbook workbook; //Excel的工作簿
        private Excel.Worksheet sheet;  //Excel的工作表(sheet)
        private Excel.Range cell;  //Excel的单元格(range)
        private object obj = Type.Missing;

 

实例:

 (1)新建Excel,并写入数据

       

  public void CreateAndWrite()
        {
            Excel.Application excelApp = new Excel.Application();
            Excel.Workbook excelWb = excelApp.Workbooks.Add(true);
            Excel.Worksheet excelSheet = excelWb.ActiveSheet;

            excelApp.Visible = true; //使Excel可见
            //直接写入数据
            excelSheet.Cells[1, 1] = "第一行 第一例";
            excelSheet.Cells[1, 2] = "第一行 第二列";
            excelSheet.Cells[2, 1] = "第二行 第一例";
            excelSheet.Cells[2, 2] = "第二行 第二列";

            excelSheet.get_Range("A1", "B1").Font.Bold = true; //控制字体加粗
            excelSheet.get_Range("A1", "B1").VerticalAlignment = Excel.XlVAlign.xlVAlignCenter; //居中控制

            //批量写入数据
            string[] dd = new string[10];//模拟数据
            string[,] data=new string[10,5];//模拟数据
            for (int i = 0; i < 10; i++)
            {
                dd[i] = "data" + i;
                for (int j = 0; j < 5; j++)
                {
                    data[i, j] = "Data[" + i + "," + j + "]";
                }
            }
            //1行5列
            excelSheet.get_Range("D2", Type.Missing).get_Resize(1, 5).Value = dd;
            //10行5列
            excelSheet.get_Range("D4").get_Resize(10,5).Value = data;

            //保存(设置Visible=false)
            excelWb.Save();
            //释放资源
            System.Runtime.InteropServices.Marshal.ReleaseComObject(excelSheet);
            excelWb.Close(Type.Missing, Type.Missing, Type.Missing);
            System.Runtime.InteropServices.Marshal.ReleaseComObject(excelWb);
            excelApp.Quit();
            System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp);
        }

 

(2) (写ing....)

 

posted on 2014-05-06 18:06  MisterS  阅读(334)  评论(0编辑  收藏  举报

导航