Копіювання аркушів Excel у C#

У деяких випадках вам може знадобитися скопіювати аркуші в книзі Excel або з однієї книги в іншу. З іншого боку, переміщення робочих аркушів для зміни їхнього положення в книзі також потрібне в різних сценаріях. Щоб виконати вищезазначені завдання програмним шляхом, у цій статті показано, як скопіювати робочі аркуші Excel у C#. Крім того, тут також описано, як змінити положення аркуша в книзі Excel.

C# API для копіювання робочих аркушів Excel – безкоштовне завантаження

Щоб скопіювати робочі аркуші у файли Excel, ми будемо використовувати потужні можливості роботи з електронними таблицями Aspose.Cells for .NET. API надає вам широкий спектр функцій для створення та обробки файлів Excel у ваших програмах .NET. Ви можете завантажити двійкові файли API або встановити його за допомогою NuGet.

PM> Install-Package Aspose.Cells

Копіювання аркушів Excel у C#

Нижче наведено кроки для копіювання аркуша в книгу Excel за допомогою C#.

У наведеному нижче прикладі коду C# показано, як скопіювати аркуш Excel у робочу книгу.

// Відкрийте наявний файл Excel
Workbook wb = new Workbook("workbook.xlsx");

// Створіть об’єкт WorksheetCollection із посиланням на аркуші робочої книги
WorksheetCollection sheets = wb.Worksheets;

// Скопіюйте дані на новий аркуш із наявного аркуша робочої книги
sheets.AddCopy("Sheet1");

// Збережіть файл Excel
wb.Save("CopyWithinWorkbook.xlsx");

C#: копіювання робочих аркушів Excel з однієї книги в іншу

Тепер давайте розглянемо, як скопіювати робочий аркуш з однієї книги Excel в іншу. Нижче наведено кроки для виконання цієї операції.

  • Створіть об’єкт класу Workbook і завантажте вихідний файл Excel.
  • Створіть ще один об’єкт класу Workbook і завантажте цільовий файл Excel.
  • Скопіюйте робочий аркуш із джерела в книгу призначення за допомогою методу destinationWorkbook.Worksheets[int].Copy(sourceWorkbook.Worksheets[int]).
  • Збережіть робочу книгу призначення за допомогою методу Workbook.Save(string).

У наведеному нижче прикладі коду показано, як скопіювати робочий аркуш з однієї книги в іншу в C#.

// Файл Excel з відкритим кодом
Workbook sourceWorkbook = new Workbook("source.xlsx");

// Відкрийте цільовий файл Excel
Workbook destinationWorkbook = new Workbook("destination.xlsx");

// Скопіюйте перший аркуш вихідної книги в цільову книгу
destinationWorkbook.Worksheets[0].Copy(sourceWorkbook.Worksheets[0]);

// Збережіть файл Excel
destinationWorkbook.Save("copy-worksheets.xlsx");

Переміщення аркуша Excel у C#

Може статися випадок, коли вам потрібно змінити розташування аркушів у робочій книзі. Це можна зробити, перемістивши аркуші на потрібні позиції, вказавши індекс. Нижче наведено кроки для переміщення робочого аркуша Excel з однієї позиції в іншу.

  • Завантажте файл Excel за допомогою класу Workbook.
  • Отримайте робочі аркуші в об’єкті WorksheetCollection за допомогою властивості Workbook.Worksheets.
  • Отримайте доступ до потрібного робочого аркуша з колекції робочих аркушів в об’єкт Worksheet.
  • Використовуйте метод Worksheet.MoveTo(int), щоб перемістити аркуш до вказаного індексу.
  • Збережіть оновлену книгу за допомогою методу Workbook.Save(string).

У наведеному нижче прикладі коду показано, як перемістити аркуш Excel з однієї позиції в іншу за допомогою C#.

// Відкрийте існуючий файл Excel
Workbook wb = new Workbook("workbook.xlsx");

// Створіть об’єкт WorksheetCollection із посиланням на аркуші робочої книги
WorksheetCollection sheets = wb.Worksheets;

// Отримайте перший аркуш.
Worksheet worksheet = sheets[0];

// Перемістіть перший аркуш на третю позицію в робочій книзі
worksheet.MoveTo(2);

// Збережіть файл Excel
wb.Save("move-worksheet.xlsx");

C# API для копіювання аркушів Excel – отримайте безкоштовну ліцензію

Ви можете безкоштовно спробувати та оцінити Aspose.Cells for .NET, надіславши запит на тимчасову ліцензію.

Висновок

У цій статті ви дізналися, як копіювати робочі аркуші Excel у робочій книзі або з однієї книги в іншу за допомогою C#. Крім того, ви бачили, як перемістити робочий аркуш Excel з одного місця в інше в робочій книзі. Ви можете дослідити інші функції Aspose.Cells for .NET за допомогою документації. Якщо у вас виникнуть запитання, надішліть допис на нашому форумі.

Дивись також