Dostosowywanie formatów wyświetlania za pomocą liczb zdefiniowanych przez użytkownika

Wstęp

Praca z plikami Excela często wymaga niestandardowego formatowania komórek, aby przedstawić dane w bardziej znaczący i przyjazny dla użytkownika sposób. Wyobraź sobie, że tworzysz plik Excela na potrzeby raportu. Nie chcesz tylko surowych liczb. Chcesz, aby daty, procenty i waluty wyglądały elegancko i profesjonalnie, prawda? Właśnie tutaj wkraczają niestandardowe formaty wyświetlania. W tym samouczku zagłębiamy się w Aspose.Cells dla .NET, aby pokazać, jak dostosować format wyświetlania liczb przy użyciu ustawień zdefiniowanych przez użytkownika.

Wymagania wstępne

Zanim zaczniesz, upewnij się, że masz wszystko gotowe, aby śledzić ten samouczek. Oto, czego będziesz potrzebować:

  • Aspose.Cells dla .NET zainstalowany.Pobierz tutaj.
  • Podstawowa znajomość języka C# i .NET Framework.
  • Ważna licencja na Aspose.Cells. Jeśli jej nie masz, zdobądźbezpłatny okres próbny lub poproś olicencja tymczasowa.
  • Środowisko IDE podobne do Visual Studio.
  • .NET Framework 4.0 lub nowszy. Jeśli czegoś Ci brakuje, nie martw się. Zawsze możesz ponownie odwiedzić te linki, aby pobrać niezbędne pliki lub poprosić o pomocForum wsparcia Aspose.

Importuj przestrzenie nazw

Zanim przejdziesz do kodu, musisz zaimportować wymagane przestrzenie nazw, aby uzyskać dostęp do wszystkich niezbędnych funkcjonalności Aspose.Cells.

using System.IO;
using Aspose.Cells;
using System;

Te dwie przestrzenie nazw będą twoimi głównymi narzędziami w tym samouczku. Teraz przejdźmy do zabawnej części:

Krok 1: Konfigurowanie katalogu projektu

Najpierw potrzebujesz miejsca do przechowywania plików, prawda? Utwórzmy katalog, aby zapisać plik wyjściowy Excela. W tym kroku upewnimy się również, że katalog istnieje, zanim cokolwiek zapiszemy.

// Ścieżka do katalogu dokumentów.
string dataDir = "Your Document Directory";
// Utwórz katalog, jeśli jeszcze go nie ma.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
    System.IO.Directory.CreateDirectory(dataDir);
  • DefiniujemydataDir zmienna przechowująca ścieżkę dostępu do pliku wyjściowego programu Excel.
  • Następnie sprawdzamy, czy katalog istnieje, używającSystem.IO.Directory.Exists().
  • Jeżeli katalog nie istnieje, zostanie utworzony za pomocąSystem.IO.Directory.CreateDirectory().

Krok 2: Utwórz nowy skoroszyt i dodaj arkusz kalkulacyjny

Teraz, gdy mamy już nasz katalog, utwórzmy nowy skoroszyt w programie Excel i dodajmy do niego arkusz.

// Tworzenie instancji obiektu skoroszytu
Workbook workbook = new Workbook();
// Dodawanie nowego arkusza kalkulacyjnego do obiektu Excel
int i = workbook.Worksheets.Add();
// Uzyskanie odniesienia do nowo dodanego arkusza roboczego poprzez podanie indeksu arkusza
Worksheet worksheet = workbook.Worksheets[i];
  • Najpierw tworzymy nowyWorkbook obiekt. Pomyśl o tym jak o swoim pliku Excel.
  • Dodajemy nowy arkusz do tego skoroszytu za pomocąAdd()metoda i zapisz indeks w zmienneji.
  • Do tego arkusza roboczego odwołujemy się za pomocąworkbook.Worksheets[i].

Krok 3: Dodawanie daty do komórki i dostosowywanie jej formatu

Teraz wstawmy bieżącą datę do komórki i sformatujmy ją tak, aby wyświetlała się w niestandardowy sposób. Zamiast domyślnego formatu daty ustawimy niestandardowy format, taki jakd-mmm-yy.

// Dodawanie bieżącej daty systemowej do komórki „A1”
worksheet.Cells["A1"].PutValue(DateTime.Now);
// Uzyskiwanie stylu komórki A1
Style style = worksheet.Cells["A1"].GetStyle();
// Ustawianie niestandardowego formatu wyświetlania, aby data była wyświetlana jako „d-mmm-rr”
style.Custom = "d-mmm-yy";
// Stosowanie stylu do komórki A1
worksheet.Cells["A1"].SetStyle(style);
  • Dodajemy aktualną datę systemową do komórkiA1 używającPutValue(DateTime.Now).
  • Pobieramy aktualny styl komórkiA1 używającGetStyle().
  • Modyfikujemy styl komórki poprzez ustawieniestyle.Custom = "d-mmm-yy", który formatuje datę tak, aby pokazywała dzień, skrócony miesiąc i rok.
  • Na koniec stosujemy nowy styl do komórki za pomocąSetStyle().

Krok 4: Formatowanie komórki jako wartości procentowej

Następnie zajmiemy się liczbami. Dodamy wartość liczbową do innej komórki, powiedzmyA2i sformatuj go jako wartość procentową.

//Dodawanie wartości liczbowej do komórki „A2”
worksheet.Cells["A2"].PutValue(20);
// Uzyskiwanie stylu komórki A2
style = worksheet.Cells["A2"].GetStyle();
// Ustawianie niestandardowego formatu wyświetlania w celu wyświetlania wartości jako procent
style.Custom = "0.0%";
// Stosowanie stylu do komórki A2
worksheet.Cells["A2"].SetStyle(style);
  • Dodajemy wartość20 do komórkiA2.
  • Pobieramy styl komórkiA2 i ustaw niestandardowy format na0.0% aby wyświetlić wartość jako procent (np. 20%).
  • Na koniec stosujemy styl do komórki za pomocąSetStyle().

Krok 5: Formatowanie komórki jako waluty

Dodajmy kolejną wartość, powiedzmy do komórkiA3i sformatuj go tak, aby wyświetlał się jako waluta. Aby było ciekawiej, użyjemy formatu, który wyświetla wartości dodatnie jako walutę w funtach, a wartości ujemne jako dolary.

// Dodawanie wartości liczbowej do komórki „A3”
worksheet.Cells["A3"].PutValue(2546);
// Uzyskiwanie stylu komórki A3
style = worksheet.Cells["A3"].GetStyle();
// Ustawianie niestandardowego formatu wyświetlania w celu wyświetlania wartości jako waluty
style.Custom = "£#,##0;[Red]$-#,##0";
// Stosowanie stylu do komórki A3
worksheet.Cells["A3"].SetStyle(style);
  • Dodajemy wartość2546 do komórkiA3.
  • Ustawiliśmy niestandardowy format£#,##0;[Red]$-#,##0, który wyświetla wartości dodatnie za pomocą znaku funta, a wartości ujemne na czerwono ze znakiem dolara.
  • Zastosowujemy styl do komórki za pomocąSetStyle().

Krok 6: Zapisywanie skoroszytu

Ostatnim krokiem jest zapisanie skoroszytu jako pliku Excel. W tym samouczku użyjemy formatu Excel 97-2003.

// Zapisywanie pliku Excel
workbook.Save(dataDir + "book1.out.xls", SaveFormat.Excel97To2003);
  • TenSave() Metoda zapisuje skoroszyt w określonym katalogu.
  • WybieramySaveFormat.Excel97To2003 aby zapewnić zgodność ze starszymi wersjami programu Excel.

Wniosek

Oto i masz! Właśnie utworzyliśmy plik Excel, dodaliśmy niestandardowe formaty daty, procentów i walut do określonych komórek za pomocą Aspose.Cells dla .NET i zapisaliśmy plik. Niestandardowe formatowanie sprawia, że pliki Excel są o wiele bardziej czytelne i profesjonalne. Nie zapomnij zapoznać się z innymi opcjami formatowania w Aspose.Cells, takimi jak formatowanie warunkowe, aby uzyskać jeszcze większą kontrolę nad wyglądem danych.

Najczęściej zadawane pytania

Jak mogę zastosować bardziej złożone opcje formatowania w Aspose.Cells?

Możesz łączyć różne style formatowania, takie jak kolor czcionki, obramowanie i kolory tła, z niestandardowymi formatami liczb.

Czy mogę zastosować niestandardowy format liczb do zakresu komórek?

Tak, Aspose.Cells pozwala na zastosowanie stylu do zakresu komórek za pomocąRange.SetStyle() metoda.

W jakich innych formatach plików mogę zapisać skoroszyt?

Aspose.Cells obsługuje wiele formatów, w tym XLSX, CSV i PDF. Wystarczy zmienićSaveFormat wSave() metoda.

Czy mogę inaczej sformatować liczby ujemne?

Oczywiście! Możesz użyć niestandardowych formatów liczbowych, aby wyświetlać liczby ujemne w różnych kolorach lub symbolach.

Czy Aspose.Cells dla .NET jest darmowy?

Aspose.Cells oferuje bezpłatną wersję próbną, ale do pełnej funkcjonalności potrzebna jest ważna licencja. Możesz uzyskaćtymczasowa licencja tutaj.