天天看点

使用C#操作EXCEL文件1.在项目中引用Microsoft Excel 12.0 Object Lib这个COM组件,如图所示。2. 在命名空间中添加引用,完整的引用如图所示。3.打开、关闭Excel文件4. 获取工作表5. 删除工作表6. 对EXCEl工作表的行列进行操作7. 对EXCEL文档中的单元格进行操作完整代码

文章目录

  • 1.在项目中引用Microsoft Excel 12.0 Object Lib这个COM组件,如图所示。
  • 2. 在命名空间中添加引用,完整的引用如图所示。
  • 3.打开、关闭Excel文件
  • 4. 获取工作表
  • 5. 删除工作表
  • 6. 对EXCEl工作表的行列进行操作
  • 7. 对EXCEL文档中的单元格进行操作
  • 完整代码

1.在项目中引用Microsoft Excel 12.0 Object Lib这个COM组件,如图所示。

使用C#操作EXCEL文件1.在项目中引用Microsoft Excel 12.0 Object Lib这个COM组件,如图所示。2. 在命名空间中添加引用,完整的引用如图所示。3.打开、关闭Excel文件4. 获取工作表5. 删除工作表6. 对EXCEl工作表的行列进行操作7. 对EXCEL文档中的单元格进行操作完整代码

2. 在命名空间中添加引用,完整的引用如图所示。

使用C#操作EXCEL文件1.在项目中引用Microsoft Excel 12.0 Object Lib这个COM组件,如图所示。2. 在命名空间中添加引用,完整的引用如图所示。3.打开、关闭Excel文件4. 获取工作表5. 删除工作表6. 对EXCEl工作表的行列进行操作7. 对EXCEL文档中的单元格进行操作完整代码

3.打开、关闭Excel文件

//EXCEL所存储的路径
            string fileName = @"C:\Users\Administrator\Desktop\测试.xls";

            //新建一个应用程序EXC1
            MSword.Application EXC1 = new MSword.Application();
            EXC1.Visible = true;//设置EXC1打开后可见


            MSword.Workbooks wbs = EXC1.Workbooks;
            MSword._Workbook wb = wbs.Add(fileName);//打开并显示EXCEL文件

            wb.Close();//关闭文档
            wbs.Close();//关闭工作簿

            EXC1.Quit();//关闭EXCEL应用程序

            //释放EXCEL应用程序的进程
            System.Runtime.InteropServices.Marshal.ReleaseComObject(EXC1);
           

4. 获取工作表

一个Excel文档中,通常会有多张工作表,通过一些基本的命令,可以获取某张工作表的名称,行数等.

首先,获取工作表应在关闭文档之前,所以,我们先将第3步骤中的关闭文档及后面的代码注释掉,然后再写入对工作表进行操作的代码,如下面代码所示。

//EXCEL所存储的路径
            string fileName = @"C:\Users\Administrator\Desktop\测试.xls";

            //新建一个应用程序EXC1
            MSword.Application EXC1 = new MSword.Application();
            EXC1.Visible = true;//设置EXC1打开后可见


            MSword.Workbooks wbs = EXC1.Workbooks;
            MSword._Workbook wb = wbs.Add(fileName);//打开并显示EXCEL文件

            MSword._Worksheet Exsheet;//定义一个新的工作表
            Exsheet = wb.Sheets[1];//获取Excel文件中的第一张工作表
            string sName = Exsheet.Name;//将工作表名称,存入一个字符串变量进行记录
            int sRowcount = Exsheet.Rows.Count;//将工作表行数,存入一个整型变量进行记录
            //同样可以通过 Exsheet = wb.Sheets[2]进行操作
            Exsheet.Activate();//激活工作表

            
   

            //wb.Close();//关闭文档
            //wbs.Close();//关闭工作簿

            //EXC1.Quit();//关闭EXCEL应用程序

            释放EXCEL应用程序的进程
            //System.Runtime.InteropServices.Marshal.ReleaseComObject(EXC1);
           

5. 删除工作表

如下面的代码所示,在激活工作表1后,获取工作表3,然后对工作表三进行删除操作。

//EXCEL所存储的路径
            string fileName = @"C:\Users\Administrator\Desktop\测试.xls";

            //新建一个应用程序EXC1
            MyExcel.Application EXC1 = new MyExcel.Application();
            EXC1.Visible = true;//设置EXC1打开后可见


            MyExcel.Workbooks wbs = EXC1.Workbooks;
            MyExcel._Workbook wb = wbs.Add(fileName);//打开并显示EXCEL文件

            MyExcel._Worksheet Exsheet;//定义一个新的工作表
            Exsheet = wb.Sheets[1];//获取Excel文件中的第一张工作表
            string sName = Exsheet.Name;//将工作表名称,存入一个字符串变量进行记录
            int sRowcount = Exsheet.Rows.Count;//将工作表行数,存入一个整型变量进行记录
            //同样可以通过 Exsheet = wb.Sheets[2]进行操作
            Exsheet.Activate();//激活工作表

            MyExcel.Sheets dd = wb.Sheets;//获取工作表
            Exsheet = (MyExcel.Worksheet)dd.get_Item(3);
            EXC1.DisplayAlerts = false;
            Exsheet.Delete();//删除第三张工作表
            wb.Save();

            
   

            //wb.Close();//关闭文档
            //wbs.Close();//关闭工作簿

            //EXC1.Quit();//关闭EXCEL应用程序

            释放EXCEL应用程序的进程
            //System.Runtime.InteropServices.Marshal.ReleaseComObject(EXC1);
           

6. 对EXCEl工作表的行列进行操作

//EXCEL所存储的路径
            string fileName = @"C:\Users\Administrator\Desktop\测试.xls";

            //新建一个应用程序EXC1
            MyExcel.Application EXC1 = new MyExcel.Application();
            EXC1.Visible = true;//设置EXC1打开后可见


            MyExcel.Workbooks wbs = EXC1.Workbooks;
            MyExcel._Workbook wb = wbs.Add(fileName);//打开并显示EXCEL文件

            object Nothing = Missing.Value;
            MyExcel._Worksheet Exsheet;//定义一个新的工作表
            Exsheet = wb.Sheets[1];//获取Excel文件中的第一张工作表
            string sName = Exsheet.Name;//将工作表名称,存入一个字符串变量进行记录
            int sRowcount = Exsheet.Rows.Count;//将工作表行数,存入一个整型变量进行记录
            //同样可以通过 Exsheet = wb.Sheets[2]进行操作
            Exsheet.Activate();//激活工作表

            //删除工作表第一行
            ((MyExcel.Range)Exsheet.Rows[1, Nothing]).Delete(MyExcel.XlDeleteShiftDirection.xlShiftUp);

            //删除工作表第二列
            ((MyExcel.Range)Exsheet.Cells[Exsheet.Rows.Count, 2]).Delete(MyExcel.XlDeleteShiftDirection.xlShiftToLeft);


            ((MyExcel.Range)Exsheet.Rows[3, Missing.Value]).RowHeight = 5;//设置行高

            ((MyExcel.Range)Exsheet.Rows[3, Missing.Value]).ColumnWidth = 5;//设置列宽
           

7. 对EXCEL文档中的单元格进行操作

#region 打开EXCEL文件模块
            //EXCEL所存储的路径
            string fileName = @"C:\Users\Administrator\Desktop\测试.xls";

            //新建一个应用程序EXC1
            MyExcel.Application EXC1 = new MyExcel.Application();
            EXC1.Visible = true;//设置EXC1打开后可见


            MyExcel.Workbooks wbs = EXC1.Workbooks;
            MyExcel._Workbook wb = wbs.Add(fileName);//打开并显示EXCEL文件

            object Nothing = Missing.Value;
            MyExcel._Worksheet Exsheet;//定义一个新的工作表
            Exsheet = wb.Sheets[1];//获取Excel文件中的第一张工作表
            string sName = Exsheet.Name;//将工作表名称,存入一个字符串变量进行记录
            int sRowcount = Exsheet.Rows.Count;//将工作表行数,存入一个整型变量进行记录
            //同样可以通过 Exsheet = wb.Sheets[2]进行操作
            Exsheet.Activate();//激活工作表

            MyExcel.Range DYG = (MyExcel.Range)Exsheet.Cells[2, 2];//单元格B2
            string content = DYG.Text;//读取单元格中的内容,并且写入一个string类型变量中
            double height = DYG.Height;//读取单元格的高度,并且写入一个double类型的变量中
            double width = DYG.Width;//读取单元格的宽度,并且写入一个double类型的变量中
            Exsheet.Cells[2, 2] = "= A5&A3";//在B2单元格中设置公式
            Exsheet.Cells[2, 3] = "sssss";//在C3单元格中设置内容

         
           

完整代码

https://download.csdn.net/download/weixin_42764060/11175686