W tym artykule dowiesz się, jak tworzyć pliki Excel XLS/XLSX w C# bez instalowania pakietu MS Office.

Utwórz plik Excel w C# API

Arkusze kalkulacyjne stały się obecnie istotną częścią przechowywania, organizowania i analizowania danych. Arkusze kalkulacyjne, takie jak MS Excel, umożliwiają wykonywanie obliczeń i sortowanie, generowanie wykresów lub wykresów, tworzenie budżetów i wykonywanie wielu innych zadań związanych z rachunkowością lub analizą danych. Ponieważ zautomatyzowane rozwiązania są obecnie bardziej popularne w biznesie, pojawił się trend tworzenia i manipulowania dokumentami Excel (XLS/XLSX), który rozwija się w ogromnym tempie. Ten przypadek użycia wzbudził potrzebę posiadania rozwiązania do automatyzacji programu Excel.

Zgodnie z powyższym scenariuszem, ten obszerny artykuł ma na celu pokazanie kilku podstawowych funkcji automatyzacji programu Excel w aplikacjach C# .NET.

Interfejs API języka C# do tworzenia plików programu Excel — bezpłatne pobieranie

Aby pracować z dokumentami programu Excel, użyjemy Aspose.Cells for .NET, który jest potężnym interfejsem API do tworzenia, odczytywania i manipulowania dokumentami arkuszy kalkulacyjnych, w tym plikami XLS i XLSX. Możesz pobrać lub zainstalować interfejs API, korzystając z jednego z następujących sposobów:

Korzystanie z Menedżera pakietów NuGet

Biblioteka automatyzacji programu C# Excel

Korzystanie z konsoli Menedżera pakietów

PM> Install-Package Aspose.Cells

Utwórz Excel XLS lub XLSX w C#

Plik Excel jest również znany jako skoroszyt, który składa się z jednego lub wielu arkuszy roboczych zawierających wiersze i kolumny do przechowywania danych. W ten sposób skoroszyt działa jako kontener arkuszy roboczych w pliku Excel. Aby więc utworzyć plik Excel, najpierw utworzysz skoroszyt, a następnie arkusze kalkulacyjne w tym skoroszycie. Poniżej przedstawiono kroki tworzenia pliku programu Excel przy użyciu Aspose.Cells dla platformy .NET.

  • Utwórz instancję klasy Workbook.
  • Uzyskaj dostęp do pierwszego arkusza (utworzonego domyślnie) skoroszytu.
  • Uzyskaj dostęp do żądanych komórek arkusza roboczego i umieść wartość w komórkach.
  • Zapisz skoroszyt jako plik XLS lub XLSX.

Poniższy przykładowy kod pokazuje, jak utworzyć plik XLSX programu Excel przy użyciu języka C#.

// Utwórz instancję obiektu Workbook, który reprezentuje plik programu Excel.
Workbook wb = new Workbook();

// Podczas tworzenia nowego skoroszytu do skoroszytu dodawany jest domyślny „Arkusz1”.
Worksheet sheet = wb.Worksheets[0];

// Uzyskaj dostęp do komórki „A1” w arkuszu.
Cell cell = sheet.Cells["A1"];

// Wpisz „Witaj, świecie!” tekst do komórki „A1”.
cell.PutValue("Hello World!");

// Zapisz plik Excel jako plik .xlsx.
wb.Save("Excel.xlsx", SaveFormat.Xlsx);

Wyjście

Twórz pliki Excela w C#

Zapisz dane do pliku Excel XLSX w C#

Jeśli chcesz edytować i zapisywać dane w istniejącym pliku Excel, możesz to zrobić w podobny sposób. Po prostu załaduj źródłowy dokument arkusza kalkulacyjnego Excel za pomocą obiektu Workbook i uzyskaj dostęp do żądanych arkuszy i komórek. Poniżej przedstawiono kroki edytowania istniejącego pliku programu Excel.

  • Otwórz plik programu Excel w obiekcie FileStream.
  • Utwórz instancję Workbook i zainicjuj ją obiektem FileStream.
  • Uzyskaj dostęp do arkuszy roboczych i komórek za pomocą odpowiednio klas Worksheet i Cell.
  • Zapisz skoroszyt jako plik Excel .xlsx.

Poniższy przykładowy kod pokazuje, jak edytować i zapisywać dane w istniejącym pliku XLSX programu Excel w języku C#.

// Utwórz instancję obiektu Workbook, który reprezentuje plik programu Excel.
Workbook wb = new Workbook("Excel.xlsx");

// Otwórz „Arkusz1” ze skoroszytu.
Worksheet sheet = wb.Worksheets[0];

// Uzyskaj dostęp do komórki „A1” w arkuszu.
Cell cell = sheet.Cells["A1"];

// Wpisz „Witaj, świecie!” tekst do komórki „A1”.
cell.PutValue("The cell's value is updated.");

// Zapisz plik programu Excel jako .xlsx.
wb.Save("Excel_updated.xlsx", SaveFormat.Xlsx);

C# Utwórz plik Excel z wykresami lub wykresami

Arkusze kalkulacyjne Excel zapewniają doskonały sposób analizy lub wizualnej prezentacji danych za pomocą wykresów i wykresów. Aspose.Cells for .NET zapewnia pełny zestaw klas do tworzenia i manipulowania różnorodnymi wykresami w arkuszach kalkulacyjnych Excel, w których każda klasa jest używana do wykonywania określonych zadań.

Aby utworzyć wykresy w pliku Excel, musisz wykonać następujące kroki:

  • Dodaj niektóre dane (do wykorzystania jako źródło danych) do arkusza, uzyskując dostęp do jego komórek.
  • Dodaj nowy obiekt wykresu do arkusza za pomocą kolekcji Worksheet.Charts, przekazując typ wykresu za pomocą wyliczenia ChartType.
  • Pobierz nowo utworzony wykres z kolekcji w obiekcie Wykres.
  • Określ zakres komórek, aby zapewnić źródło danych dla obiektu wykresu.
  • Zapisz skoroszyt jako plik Excel .xlsx.

Poniższy przykładowy kod pokazuje, jak utworzyć plik Excel XLSX i dodać wykresy w języku C#.

// Utwórz instancję obiektu Workbook, który reprezentuje plik programu Excel.
Workbook wb = new Workbook();

// Dodaj nowy arkusz do obiektu programu Excel.
int sheetIndex = wb.Worksheets.Add();

// Uzyskaj odniesienie do nowo dodanego arkusza, przekazując jego indeks arkusza.
Worksheet worksheet = wb.Worksheets[sheetIndex];

// Dodaj fikcyjne wartości do komórek.
worksheet.Cells["A1"].PutValue(50);
worksheet.Cells["A2"].PutValue(100);
worksheet.Cells["A3"].PutValue(150);
worksheet.Cells["B1"].PutValue(4);
worksheet.Cells["B2"].PutValue(20);
worksheet.Cells["B3"].PutValue(50);

// Dodaj wykres do arkusza.
int chartIndex = worksheet.Charts.Add(Charts.ChartType.Pyramid, 5, 0, 15, 5);

// Uzyskaj dostęp do instancji nowo dodanego wykresu.
Charts.Chart chart = worksheet.Charts[chartIndex];

// Dodaj SeriesCollection (źródło danych wykresu) do wykresu w zakresie od komórki „A1” do „B3”.
chart.NSeries.Add("A1:B3", true);

// Zapisz plik Excela.
wb.Save("Excel_Chart.xlsx", SaveFormat.Xlsx);

Wyjście

Utwórz wykres w Excelu w C#

Więcej informacji na temat tworzenia wykresów w arkuszach programu Excel przy użyciu języka C#.

Utwórz plik Excel XLSX z tabelą w C#

Możesz także utworzyć tabelę z zakresu komórek w arkuszu programu Excel i dodać wiersz dla sumy (suma, liczebność itp.) w tabeli. Poniżej przedstawiono kroki tworzenia pliku programu Excel (XLSX) i dodawania tabeli w języku C#:

  • Załaduj skoroszyt programu Excel lub utwórz nowy, korzystając z klasy Workbook.
  • Dodaj dane do komórek arkusza.
  • Dodaj nowy ListObject do arkusza.
  • Ustaw właściwość ListObject.ShowTotals na true.
  • Oblicz sumę i zapisz skoroszyt jako plik Excel .xlsx.

Poniższy przykładowy kod pokazuje, jak utworzyć tabelę w pliku programu Excel w języku C#.

// Utwórz instancję obiektu Workbook, który reprezentuje plik programu Excel.
Workbook wb = new Workbook();

// Pobierz pierwszą kartę pracy.
Worksheet sheet = wb.Worksheets[0];

// Uzyskanie kolekcji komórek arkusza kalkulacyjnego
Cells cells = sheet.Cells;

// Ustawienie wartości dla komórek
Aspose.Cells.Cell cell = cells["A1"];
cell.PutValue("Employee");
cell = cells["B1"];
cell.PutValue("Quarter");
cell = cells["C1"];
cell.PutValue("Product");
cell = cells["D1"];
cell.PutValue("Continent");
cell = cells["E1"];
cell.PutValue("Country");
cell = cells["F1"];
cell.PutValue("Sale");

cell = cells["A2"];
cell.PutValue("David");
cell = cells["A3"];
cell.PutValue("David");
cell = cells["A4"];
cell.PutValue("David");
cell = cells["A5"];
cell.PutValue("David");
cell = cells["A6"];
cell.PutValue("James"); 

cell = cells["B2"];
cell.PutValue(1);
cell = cells["B3"];
cell.PutValue(2);
cell = cells["B4"];
cell.PutValue(3);
cell = cells["B5"];
cell.PutValue(4);
cell = cells["B6"];
cell.PutValue(1); 

cell = cells["C2"];
cell.PutValue("Maxilaku");
cell = cells["C3"];
cell.PutValue("Maxilaku");
cell = cells["C4"];
cell.PutValue("Chai");
cell = cells["C5"];
cell.PutValue("Maxilaku");
cell = cells["C6"];
cell.PutValue("Chang"); 

cell = cells["D2"];
cell.PutValue("Asia");
cell = cells["D3"];
cell.PutValue("Asia");
cell = cells["D4"];
cell.PutValue("Asia");
cell = cells["D5"];
cell.PutValue("Asia");
cell = cells["D6"];
cell.PutValue("Europe"); 


cell = cells["E2"];
cell.PutValue("China");
cell = cells["E3"];
cell.PutValue("India");
cell = cells["E4"];
cell.PutValue("Korea");
cell = cells["E5"];
cell.PutValue("India");
cell = cells["E6"];
cell.PutValue("France"); 


cell = cells["F2"];
cell.PutValue(2000);
cell = cells["F3"];
cell.PutValue(500);
cell = cells["F4"];
cell.PutValue(1200);
cell = cells["F5"];
cell.PutValue(1500);
cell = cells["F6"];
cell.PutValue(500); 

// Dodanie nowego obiektu listy do arkusza
Tables.ListObject listObject = sheet.ListObjects[sheet.ListObjects.Add("A1", "F6", true)];

// Dodawanie stylu domyślnego do tabeli
listObject.TableStyleType = Tables.TableStyleType.TableStyleMedium10;

// Pokaż sumę
listObject.ShowTotals = true;

// Ustaw typ obliczeń pola Quarter
listObject.ListColumns[1].TotalsCalculation = Tables.TotalsCalculation.Count;

// Zapisz plik Excela.
wb.Save("Excel_Table.xlsx", SaveFormat.Xlsx);

Wyjście

Utwórz tabelę w arkuszu programu Excel w języku C#

Więcej informacji o pracy z tabelami w arkuszach programu Excel przy użyciu języka C#.

Interfejs API platformy C# .NET do tworzenia plików programu Excel — uzyskaj bezpłatną licencję

Możesz używać Aspose.Cells for .NET bez ograniczeń ewaluacyjnych, otrzymując darmową licencję tymczasową.

Wniosek

W tym artykule nauczyłeś się tworzyć pliki programu Excel od podstaw przy użyciu języka C#. Ponadto widziałeś, jak wstawiać dane do arkuszy, generować wykresy i wstawiać tabele w plikach Excel. Możesz zajrzeć do dokumentacji Aspose.Cells for .NET, aby poznać zaawansowane funkcje manipulacji plikami Excela w C#.

Powiązany artykuł

Tworzenie i sortowanie tabel przestawnych w arkuszach programu ExcelTworzenie plików programu Excel w aplikacjach Node.jsWyłączanie sprawdzania zgodności w plikach programu Excel przy użyciu języka C#
Wyłącz sprawdzanie zgodności programu Excel w JavieWyłącz sprawdzanie zgodności programu Excel w języku PythonOdczytywanie plików programu Excel przy użyciu języka C#
Odczytywanie plików programu Excel przy użyciu języka JavaOdczytywanie plików programu Excel przy użyciu języka Python