Najpopularniejszymi i najczęściej używanymi formatami plików arkuszy kalkulacyjnych są XLS, XLSX i ODS. Słynny Microsoft Excel i OpenOffice Calc obsługują te formaty i zwykle używamy tych formatów do prowadzenia kont i różnych arkuszy kalkulacyjnych. Dlatego jako programiści często musimy programowo edytować pliki Excela w naszych aplikacjach. W tym artykule omówimy, jak edytować pliki Excela w języku C# przy użyciu interfejsu API platformy .NET.

Oto tematy omówione pokrótce w tym artykule:

.NET API do edycji i automatyzacji arkuszy kalkulacyjnych Excel

GroupDocs prezentuje interfejs API .NET do edycji arkuszy kalkulacyjnych. Użyję go w przykładach C# w tym artykule. Jest to interfejs API do edycji dokumentów, który umożliwia programistom ładowanie, edytowanie i zapisywanie różnych formatów dokumentów za pomocą edytorów HTML typu WYSIWYG. Oprócz formatów arkuszy kalkulacyjnych XLS, XLSX i ODS interfejs API obsługuje edycję różnych innych formatów obsługiwanych przez arkusze kalkulacyjne i MS Excel jak CSV, TSV, DSV, XLT, XLTX, XLTM, XLSM, XLSB, XLAM, SXC, SpreadsheetML, FODS, DIF.

Pobierz instalator bibliotek DLL lub MSI z sekcji pobierania lub zainstaluj interfejs API w swojej aplikacji .NET za pośrednictwem [NuGet](https://www.nuget.org /packages/groupdocs.editor).

PM> Install-Package GroupDocs.Editor

Edytuj pliki Excela w C#

Mam nadzieję, że pomyślnie odwołałeś się do API. Teraz możesz szybko rozpocząć edycję dokumentów programu Excel. Poniższe kroki pozwolą Ci edytować dokumenty arkusza kalkulacyjnego przy użyciu języka C#.

  • Załaduj plik Excela.
  • Edytuj odpowiednio za pomocą opcji.
  • Zapisz edytowany dokument.

Załaduj arkusz kalkulacyjny programu Excel

Najpierw załaduj arkusz kalkulacyjny, podając ścieżkę/strumień dokumentu oraz hasło (jeśli dokument jest chroniony hasłem).

// Załaduj plik Excela za pomocą C#
Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.Password = "password"; // if any

// Załaduj arkusz kalkulacyjny
Editor editor = new Editor("path/spreadsheet.xlsx", delegate { return loadOptions; });

Edytuj plik Excela

Po załadowaniu możesz edytować załadowany arkusz kalkulacyjny według potrzeb. Teraz zamienimy wszystkie wystąpienia „Starej nazwy firmy” na „Nowa nazwa firmy” w pierwszej zakładce arkusza kalkulacyjnego. Poniższe kroki umożliwiają odpowiednią edycję pliku programu Excel w języku C#.

Poniższy kod źródłowy języka C# edytuje plik programu Excel i zmienia jego zawartość.

// Edytuj arkusz kalkulacyjny programu Excel za pomocą języka C#

Options.SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
// loadOptions.Password = "hasło";

// Załaduj arkusz kalkulacyjny
Editor editor = new Editor("path/spreadsheet.xlsx", delegate { return loadOptions; });

// Pobierz pierwszą kartę arkusza kalkulacyjnego
SpreadsheetEditOptions sheetTab1EditOptions = new SpreadsheetEditOptions();
sheetTab1EditOptions.WorksheetIndex = 0; // first worksheet

// Uzyskaj znaczniki HTML z jakiejś instancji 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);

Zapisz edytowany plik programu Excel z opcjami

Po edycji, podczas zapisywania edytowanej zawartości arkusza kalkulacyjnego, można ustawić różne opcje. Opcje te obejmują; ustawienie hasła, formatu wyjściowego, ochrony itp. Ustawiam powyższe opcje w poniższym kodzie i zapisuję edytowany arkusz kalkulacyjny jako plik XLSX chroniony hasłem i zapisem.

// Zapisz plik programu Excel ze zaktualizowaną zawartością przy użyciu języka C#
// Utwórz opcje zapisywania
SpreadsheetFormats xlsxFormat = SpreadsheetFormats.Xlsx;
Options.SpreadsheetSaveOptions saveOptions = new SpreadsheetSaveOptions(SpreadsheetFormats.Xlsx);

// Ustaw nowe hasło otwarcia
saveOptions.Password = "newPassword";
saveOptions.WorksheetProtection = new WorksheetProtection(WorksheetProtectionType.All, "WriteProtectionPassword");

// Utwórz strumień wyjściowy
using (FileStream outputStream = File.Create("path/editedSpreadsheet.xlsx"))
{
    editor.Save(afterEdit, outputStream, saveOptions);
}

Uzyskaj bezpłatną licencję

Możesz uzyskać bezpłatną tymczasową licencję, aby korzystać z API bez ograniczeń ewaluacyjnych.

Wniosek

Na zakończenie omówiliśmy, jak edytować dokumenty programu Excel w języku C# przy użyciu interfejsu API edycji dokumentów dla aplikacji .NET. Możesz użyć API z edytorami WYSIWYG do wizualnej edycji swoich dokumentów. Następnie możesz przejść do tworzenia własnego edytora arkuszy kalkulacyjnych online.

Więcej informacji, opcji i przykładów można znaleźć w repozytorium dokumentacja i GitHub . W przypadku dalszych pytań skontaktuj się z pomocą techniczną na forum.

Powiązane artykuły

Zobacz też