本文將介紹在C#中複製工作表數據的方法。對工作表的複製考慮了兩種情況來進行
- 在同一個工作簿內的不同工作表之間進行復制
- 在不同工作簿之間的不同工作表間進行復制
(這裏的複製是包含了複製數據、邊框、底紋、公式等原數據表格的所有內容)
另外,對於Excel表格數據的複製,除了針對整篇工作表的複製外,也可以只複製工作表中某一行或者列的數據。下面將詳細闡述代碼操作過程,方法供參考。
使用工具:Free Spire.XLS for .NET(社區版)
使用說明:安裝後,在項目程序中直接引用Spire.XLS.dll即可(dll文件可在安裝路徑下的Bin文件夾中獲取)
測試文檔:
一、在同一個工作簿內複製
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");
}
}
}
測試結果:
二、跨工作簿複製
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");
}
}
}
測試結果:
三、複製行或列
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");
}
}
}
測試結果:
1. 複製行
2.複製列
以上內容爲本次關於“C# 複製Excel工作表”的全部內容,歡迎轉載(轉載請註明出處)