天天看點

使用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