C# 複製Excel工作表
阿新 • • 發佈:2018-11-08
本文將介紹在C#中複製工作表資料的方法。對工作表的複製考慮了兩種情況來進行
- 在同一個工作簿內的不同工作表之間進行復制
- 在不同工作簿之間的不同工作表間進行復制
(這裡的複製是包含了複製資料、邊框、底紋、公式等原資料表格的所有內容)
另外,對於Excel表格資料的複製,除了針對整篇工作表的複製外,也可以只複製工作表中某一行或者列的資料。下面將詳細闡述程式碼操作過程,方法供參考。
使用工具:Free Spire.XLS for .NET(社群版)
使用說明:安裝後,在專案程式中直接引用Spire.XLS.dll即可(dll檔案可在安裝路徑下的Bin資料夾中獲取)
測試文件:
1. 同一工作簿內複製工作表
C#
using Spire.Xls; namespace Copy2 { class Program { static void Main(string[] args) { //建立一個Workbook類物件,並載入Excel檔案 Workbook workbook = new Workbook(); workbook.LoadFromFile("Sample.xlsx"); //獲取第一個工作表sheet1 Worksheet sheet1 = workbook.Worksheets[0]; //新增一個新的工作表sheet2,並命名該工作表 Worksheet sheet2 = workbook.Worksheets.Add("Copy"); //將第一個工作表複製到新新增的工作表 sheet2.CopyFrom(sheet1); //儲存並開啟檔案 workbook.SaveToFile("工作表複製.xlsx",FileFormat.Version2010); System.Diagnostics.Process.Start("工作表複製.xlsx"); } } }
測試效果:
2.跨工作簿複製工作表
using Spire.Xls; namespace CopyWorksheet_XLS { class Program { static void Main(string[] args) { //建立工作簿1,並載入第一個Excel檔案 Workbook workbook1 = new Workbook(); workbook1.LoadFromFile("Sample.xlsx"); //獲取第一個工作表 Worksheet sheet1 = workbook1.Worksheets[0]; //建立工作簿2,並載入第二個Excel檔案 Workbook workbook2 = new Workbook(); workbook2.LoadFromFile(@"C:\Users\Administrator\Desktop\sample2.xlsx"); //呼叫方法AddCopy()將第一個Excel檔案的sheet1複製到第二個Excel檔案,並命名複製後的檔案 Worksheet sheet2 = workbook2.Worksheets.AddCopy(sheet1); sheet2.Name = "Copy"; //儲存並開啟檔案 workbook2.SaveToFile("Report.xlsx"); System.Diagnostics.Process.Start("Report.xlsx"); } } }
測試效果:
3.複製一行(列)
using Spire.Xls; namespace InsertRow_s__XLS { class Program { static void Main(string[] args) { //初始化Workbook類例項,並載入Excel 測試文件 Workbook workbook = new Workbook(); workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\Sample.xlsx"); //獲取第一個工作表 Worksheet worksheet = workbook.Worksheets[0]; //新插入一行作為第3行 worksheet.InsertRow(3); //新插入一列作為第8列 // worksheet.InsertColumn(8); //將第一行資料複製到第三行 worksheet.Copy(worksheet.Range["A1:H1"], worksheet.Range["A3:H3"], true); //將第二列資料複製到第八列 // worksheet.Copy(worksheet.Range["B1:B27"],worksheet.Range["H1:H27"],true); //儲存並開啟文件 workbook.SaveToFile("複製行.xlsx", ExcelVersion.Version2010); System.Diagnostics.Process.Start("複製行.xlsx"); } } }
複製行
複製列
以上內容為本次關於“C# 複製Excel工作表”的全部內容,歡迎轉載(轉載請註明出處)