Найпоширенішими та широко використовуваними форматами файлів електронних таблиць є XLS, XLSX і ODS. Відомі Microsoft Excel і OpenOffice Calc підтримують ці формати, і ми зазвичай використовуємо ці формати для ведення облікових записів і різних електронних таблиць. Тому нам, як розробникам, необхідно програмно редагувати файли Excel у наших програмах. У цій статті ми обговоримо, як редагувати файли Excel на C# за допомогою .NET API.

У цій статті коротко обговорюються такі теми:

.NET API для редагування та автоматизації електронних таблиць Excel

GroupDocs демонструє .NET API для редагування електронних таблиць. Я буду використовувати його в прикладах C# цієї статті. Це API редагування документів, який дозволяє розробникам завантажувати, редагувати та зберігати різні формати документів за допомогою редакторів WYSIWYG HTML. Крім форматів електронних таблиць XLS, XLSX і ODS, API підтримує редагування різних інших підтримуваних форматів електронних таблиць і MS Excel наприклад CSV, TSV, DSV, XLT, XLTX, XLTM, XLSM, XLSB, XLAM, SXC, SpreadsheetML, FODS, DIF.

Завантажте інсталятор DLL або MSI із розділу завантажень або інсталюйте API у своїй програмі .NET за допомогою NuGet. /packages/groupdocs.editor).

PM> Install-Package GroupDocs.Editor

Редагування файлів Excel на C#

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

  • Завантажте файл Excel.
  • Відредагуйте відповідно з параметрами.
  • Збережіть відредагований документ.

Завантажте електронну таблицю Excel

По-перше, завантажте електронну таблицю, вказавши шлях/потік документа та пароль (якщо документ захищено паролем).

// Завантажте файл Excel за допомогою C#
Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.Password = "password"; // if any

// Завантажте електронну таблицю
Editor editor = new Editor("path/spreadsheet.xlsx", delegate { return loadOptions; });

Відредагуйте файл Excel

Після завантаження ви можете редагувати завантажену електронну таблицю за потреби. Тепер ми замінимо всі випадки «старої назви компанії» на «нову назву компанії» на першій вкладці електронної таблиці. Наступні кроки дозволяють відповідним чином редагувати файл excel у C#.

Наступний вихідний код C# редагує файл excel і змінює його вміст.

// Редагування електронної таблиці Excel за допомогою C#

Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
// loadOptions.Password = "пароль";

// Завантажте електронну таблицю
Editor editor = new Editor("path/spreadsheet.xlsx", delegate { return loadOptions; });

// Отримайте 1-шу вкладку електронної таблиці
SpreadsheetEditOptions sheetTab1EditOptions = new SpreadsheetEditOptions();
sheetTab1EditOptions.WorksheetIndex = 0; // first worksheet

// Отримайте HTML-розмітку з деякого екземпляра EditableDocument
EditableDocument firstTab = editor.Edit(sheetTab1EditOptions);
string bodyContent = firstTab.GetBodyContent(); // HTML markup from inside the HTML ->BODY element
string allContent = firstTab.GetContent();      // Full HTML markup of all document, with HTML ->HEAD header and all its content

List<IImageResource> onlyImages = firstTab.Images;
List<IHtmlResource> allResourcesTogether = firstTab.AllResources;

string editedContent = allContent.Replace("Company Name", "New Company Name");
EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResourcesTogether);

Збережіть відредагований файл Excel із параметрами

Після редагування під час збереження відредагованого вмісту електронної таблиці ви можете встановити різні параметри. Ці варіанти включають: встановлення пароля, формату виводу, захисту тощо. Я встановлюю наведені вище параметри у наведеному нижче коді та зберігаю відредаговану електронну таблицю як файл XLSX, захищений паролем і від запису.

// Збережіть файл Excel з оновленим вмістом за допомогою C#
// Створення параметрів збереження
SpreadsheetFormats xlsxFormat = SpreadsheetFormats.Xlsx;
Options.SpreadsheetSaveOptions saveOptions = new SpreadsheetSaveOptions(SpreadsheetFormats.Xlsx);

// Встановити новий пароль для відкриття
saveOptions.Password = "newPassword";
saveOptions.WorksheetProtection = new WorksheetProtection(WorksheetProtectionType.All, "WriteProtectionPassword");

// Створити вихідний потік
using (FileStream outputStream = File.Create("path/editedSpreadsheet.xlsx"))
{
    editor.Save(afterEdit, outputStream, saveOptions);
}

Отримайте безкоштовну ліцензію

Ви можете отримати безкоштовну тимчасову ліцензію, щоб використовувати API без оціночних обмежень.

Висновок

На завершення ми обговорили, як редагувати документи Excel на C# за допомогою API редагування документів для програм .NET. Ви можете використовувати API з редакторами WYSIWYG для візуального редагування ваших документів. Після цього ви можете продовжити створення власного онлайн-редактора електронних таблиць.

Щоб отримати додаткові відомості, параметри та приклади, ви можете відвідати документацію і репозиторій GitHub . Щоб отримати додаткові запитання, зверніться до служби підтримки на форумі.

Схожі статті

Дивись також