c#操作Excel表格插入行和列代碼,引用Microsoft.Office.Interop.Excel的方法


c#操作Excel表格插入行和列代碼,引用Microsoft.Office.Interop.Excel的方法,先是實現了插入空行,代碼如下

object MisValue=Type.Missing;

DataSet ds;

Microsoft.Office.Interop.Excel.Workbook xlsWorkbook;

Microsoft.Office.Interop.Excel.Worksheet xlsSheet = xlsWorkbook.Worksheets[1];

Microsoft.Office.Interop.Excel.Range xlsRow=(Microsoft.Office.Interop.Excel.Range)xlsSheet.Rows[3,MisValue];

//object   Range.Insert(object   shift,   object   copyorigin);     
//shift:   Variant類型,可選。指定單元格的調整方式。可以為下列   XlInsertShiftDirection   常量之一:   
//xlShiftToRight   或   xlShiftDown。如果省略該參數,Microsoft   Excel   將根據區域形狀確定調整方式。   

xlsRow.Insert(Microsoft.Office.Interop.Excel.XlInsertShiftDirection.xlShiftDown,MisValue);

剛高興着這下沒問題了,第一個表是行數據,第二個表換插入列數據了,心想着這不一樣么,結果頭疼了

Microsoft.Office.Interop.Excel.Range xlsColumns=(Microsoft.Office.Interop.Excel.Range)xlsSheet.Columns[MisValue,2];

運行到這里時直接出異常,Range[object RowIndex,object ColumnIndex] 獲取行就列索引用MisValue,那么照常理來講獲取列肯定

就是行索引用MisValue唄,怎么會出錯呢,我google了半天沒找到解說。沒辦法了,准備放棄的時候突然想了一下,不會是微軟給的這個

參數名字在忽悠人吧?就試了一下:

Microsoft.Office.Interop.Excel.Range xlsColumns=(Microsoft.Office.Interop.Excel.Range)xlsSheet.Columns[2,MisValue];

xlsColumns.Insert(Microsoft.Office.Interop.Excel.xlShiftRight,MisValue);

直接就好了

竟然真是被這個參數名給忽悠了。

另外,提醒一下,Microsoft.Office.Interop.Excel.Workbook 這個東西下面的Worksheets,Worksheets.Columns等集合的索引全是

從1開始,我是看到打出來的數據位置不對才知道的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM