/ / Pasta de trabalho Aspose copiar / renomear folha - c #, excel, aspose-cells

Folha de cópia / renomeação da pasta de trabalho do Aspose - c #, excel, aspose-cells

Quero copiar planilha do excel, criar cópia da planilha com nome específico.

 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");

Agora o problema é que ele copia os dados da planilha "Cash"Bônus ", mas torna o nome da planilha como" Folha111 ". Quero criar esta planilha com o nome especificado como" Caixa ".Como fazer isso? Depois que os dados são copiados para a nova guia, desejo excluir a guia antiga" Bônus em dinheiro "e renomeie a nova guia como "Bônus em dinheiro" de "Dinheiro".

Respostas:

1 para resposta № 1

Observe que, para copiar o conteúdo de umplanilha para outra planilha, você precisa adicionar uma planilha em branco à coleção e, em seguida, chamar seu método Copy ao passar o objeto da planilha existente (uma que precisa ser copiada), caso contrário, você perderá dados na planilha de destino.

Tente o seguinte trecho de código, pois ele tenta atender a todos os seus requisitos. Felizmente, os comentários ajudarão você a entender o significado das declarações.

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");

Nota: Eu trabalho com o Aspose como Developer Evangelist.