AlexZ 发表于 2023-5-6 13:54:31

【GcExcel v6.1 新特性预览】通过 Copy/Move 系列新接口,更方便的复制和移动 Work...

背景
在某些场景下,需要复制或移动一个工作簿中某一个或几个表单(Worksheet),GcExcel(Grapecity Documents for Excel)在新版本中通过增加新的接口,支持试用代码的方式复制或者移动表单,具体接口如下:

接口
复制 API 用于将工作表集合复制到其他位置。

[*]IWorksheets.Copy(IWorkbook targetWorkbook = null) 用于将工作表集合复制到指定工作簿的末尾。 如果目标工作簿为空,工作表集合将被复制到当前工作簿。
[*]IWorksheets.CopyBefore(IWorksheet targetSheet) 用于将工作表集合复制到指定工作表之前的位置。 目标工作表可以属于任何工作簿。
[*]IWorksheets.CopyAfter(IWorksheet targetSheet) 用于将工作表集合复制到指定工作表之后的位置。 目标工作表可以属于任何工作簿。
移动 API 用于将工作表集合移动到其他位置。

[*]IWorksheets.Move(IWorkbook targetWorkbook = null) 用于将工作表集合移动到指定工作簿的末尾。 如果目标工作簿为空,则工作表集合将移动到当前工作簿。
[*]IWorksheets.MoveBefore(IWorksheet targetSheet) 用于将工作表集合移动到指定工作表之前的位置。 目标工作表可以属于任何工作簿。
[*]IWorksheets.MoveAfter(IWorksheet targetSheet) 用于将工作表集合移动到指定工作表之后的位置。 目标工作表可以属于任何工作簿。
注意:

[*]不能将当前工作簿的所有工作表移动到另一个工作簿会导致异常。 将所有工作表移动到当前工作簿时,什么都不做。
[*]当目标工作簿中存在同名时,工作表将通过添加后缀(x)来重命名。 x 代表同名索引。


代码示例
// Create source file and add four worksheets
Workbook workbook = new Workbook();
IWorksheet worksheet1 = workbook.ActiveSheet;
IWorksheet worksheet2 = workbook.Worksheets.Add();
IWorksheet worksheet3 = workbook.Worksheets.Add();
IWorksheet worksheet4 = workbook.Worksheets.Add();
IWorksheet worksheet5 = workbook.Worksheets.Add();

// Create target workbook
Workbook targetWorkbook = new Workbook();

// Copy the worksheet1 and worksheet2 to current workbook.
workbook.Worksheets { worksheet1.Name, worksheet2.Name}].Copy();

// Copy worksheet3 and worksheet4 to the start of current workbook.
workbook.Worksheets { worksheet3.Name, worksheet4.Name }].CopyBefore(worksheet1);

// Copy worksheet3 and worksheet4 to the end of current workbook.
workbook.Worksheets { worksheet3.Name, worksheet4.Name }].CopyAfter(worksheet5);

// Move worksheet1 and worksheet2 to the location after the worksheet5.
workbook.Worksheets { worksheet1.Name, worksheet2.Name }].MoveAfter(worksheet5);

// Move worksheet1 and worksheet2 to the location before the worksheet3.
workbook.Worksheets { worksheet1.Name, worksheet2.Name }].MoveBefore(worksheet3);




页: [1]
查看完整版本: 【GcExcel v6.1 新特性预览】通过 Copy/Move 系列新接口,更方便的复制和移动 Work...