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 — edycja arkuszy kalkulacyjnych Excel
- Edytuj pliki arkuszy kalkulacyjnych Excel w języku C#
.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#.
- Załaduj plik Excel za pomocą Edytora i [opcji ładowania](https://apireference.groupdocs.com/editor/net/groupdocs .editor.options/spreadsheetloadoptions).
- Przygotuj Opcje edycji arkusza kalkulacyjnego, aby wyodrębnić dokładny arkusz/kartę.
- Wyciąg the content of the tab.
- Zmodyfikuj zawartość zakładki.
- Możesz wyodrębnić obrazy i wszystkie zasoby z wybranej karty.
- Utwórz nowy EditableDocument, używając zmodyfikowanej zawartości.
- Zapisz edytowany arkusz kalkulacyjny przy użyciu odpowiedniej metody Save().
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.