Назначить копию книги / переименовать книгу

Я хочу скопировать лист из excel, создать копию листа с определенным именем.

 Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook(excelFilePath);
                //Create a Worksheets object with reference to the sheets of the Workbook.
                WorksheetCollection sheets = workbook.Worksheets;
                sheets.AddCopy("Cash Bonuses"); 

Теперь проблема заключается в том, что он копирует данные Sheet «Cash Bonuses», но делает его именем «Sheet111». Я хочу сделать этот лист с указанным именем «Наличные деньги». Как это сделать? После того, как данные будут скопированы на новую вкладку, я хочу удалить старую вкладку «Наличные бонусы» и переименовать новую вкладку как «Наличные бонусы» из «Денежные средства».

c#,excel,aspose-cells,

0

Ответов: 1


1

Обратите внимание: чтобы скопировать содержимое листка на другой рабочий лист, вам нужно добавить пустой лист в коллекцию, а затем вызвать его метод «Копировать» при передаче объекта существующего листа (который нужно скопировать), иначе вы будете потерять данные на листе адресата.

Попробуйте выполнить следующую часть кода, пытаясь выполнить все ваши требования. Надеемся, что комментарии помогут вам понять, что означают утверждения.

var workbook = new Aspose.Cells.Workbook(excelFilePath);
var sheets = workbook.Worksheets;
//Access 1st worksheet from the collection
//You may also pass the worksheet name to access a particular worksheet
var sheet0 = sheets[0];
//Add a new worksheet to the collection and name it as desired
var sheet1 = sheets[sheets.Add()];
sheet1.Name = "Cash";
//Copy the contents of 1st worksheet onto the new worksheet
sheet1.Copy(sheet0);
//Delete 1st worksheet
sheets.RemoveAt(sheet0.Index);
//Rename newly added worksheet to 'Cash bonuses'
sheet1.Name = "Cash bonuses";
//Save result
workbook.Save(dir + "output.xlsx");

Примечание. Я работаю с Aspose в качестве разработчика-евангелиста.

C #, первенствует, Aspose-клетки,
Похожие вопросы