Jak ustawić formaty danych w komórkach w programie Excel

Jak ustawić formaty danych komórek w języku C# za pomocą IronXL

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronXL umożliwia formatowanie komórek programu Excel przy użyciu wbudowanych formatów danych, takich jak waluty, wartości procentowe, daty i niestandardowe formaty liczbowe, poprzez ustawienie właściwości FormatString w komórkach lub zakresach bez zależności od Interop.

Szybki start: Zastosowanie wbudowanego formatowania do pojedynczej komórki w jednym wierszu

Ten przykład pokazuje, jak utworzyć nowy skoroszyt programu Excel i zastosować wbudowany format do określonej komórki przy użyciu interfejsu API IronXL. Nie są wymagane żadne zależności Interop — wystarczy ustawić FormatString i zapisać.

  1. Install IronXL with NuGet Package Manager

    PM > Install-Package IronXL.Excel
  2. Skopiuj i uruchom ten fragment kodu.

    IronXl.WorkBook book = IronXl.WorkBook.Create(); book.DefaultWorkSheet["B2"].FormatString = IronXl.Formatting.BuiltinFormats.Currency2;
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronXL w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer


Jak ustawić formaty danych komórek w programie Excel?

Dostęp do właściwości FormatString można uzyskać zarówno poprzez komórki, jak i zakresy. Dlatego możliwe jest ustawienie formatów danych dla poszczególnych komórek, kolumn, wierszy i dowolnego zaznaczonego zakresu. Ta elastyczność sprawia, że IronXL jest szczególnie potężnym narzędziem, gdy trzeba pracować z plikami Excel w języku C# bez użycia Interop.

Formatowanie danych jest niezbędne do przejrzystego przedstawienia informacji w arkuszach kalkulacyjnych. Niezależnie od tego, czy tworzysz raporty finansowe z wartościami walutowymi, dane naukowe z precyzyjnymi miejscami po przecinku, czy analizy oparte na datach, odpowiednie formatowanie zapewnia, że Twoje dane są zarówno czytelne, jak i profesjonalne. IronXL upraszcza ten proces, zapewniając bezpośredni dostęp do silnika formatowania programu Excel za pośrednictwem prostego interfejsu API.

:path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format.cs
using IronXL;
using IronXL.Formatting;
using System;
using System.Linq;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Set the data format to 12300.00%
workSheet["A1"].Value = 123;
workSheet["A1"].FormatString = BuiltinFormats.Percent2;

// Set the data format to 123.0000
workSheet["A2"].Value = 123;
workSheet["A2"].FormatString = "0.0000";

// Set data display format to range
DateTime dateValue = new DateTime(2020, 1, 1, 12, 12, 12);
workSheet["A3"].Value = dateValue;
workSheet["A4"].Value = new DateTime(2022, 3, 3, 10, 10, 10);
workSheet["A5"].Value = new DateTime(2021, 2, 2, 11, 11, 11);

IronXL.Range range = workSheet["A3:A5"];

// Set the data format to 1/1/2020 12:12:12
range.FormatString = "MM/dd/yy h:mm:ss";

workBook.SaveAs("dataFormats.xlsx");
Imports IronXL
Imports IronXL.Formatting
Imports System
Imports System.Linq

' Create a new workbook
Private workBook As WorkBook = WorkBook.Create()
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Set the data format to 12300.00%
Private workSheet("A1").Value = 123
Private workSheet("A1").FormatString = BuiltinFormats.Percent2

' Set the data format to 123.0000
Private workSheet("A2").Value = 123
Private workSheet("A2").FormatString = "0.0000"

' Set data display format to range
Private dateValue As New DateTime(2020, 1, 1, 12, 12, 12)
Private workSheet("A3").Value = dateValue
Private workSheet("A4").Value = New DateTime(2022, 3, 3, 10, 10, 10)
Private workSheet("A5").Value = New DateTime(2021, 2, 2, 11, 11, 11)

Private range As IronXL.Range = workSheet("A3:A5")

' Set the data format to 1/1/2020 12:12:12
range.FormatString = "MM/dd/yy h:mm:ss"

workBook.SaveAs("dataFormats.xlsx")
$vbLabelText   $csharpLabel
Arkusz kalkulacyjny Excel zawierający sformatowane komórki: wartości procentowe, liczbowe oraz daty i godziny w różnych formatach wyświetlania

Jak ustawić wartości komórek jako ciągi znaków bez konwersji?

Podczas ustawiania wartości w IronXL należy użyć StringValue zamiast Value, aby bezpośrednio przypisać dokładną wartość do komórki bez automatycznej konwersji. Działa to tak samo, jak umieszczenie apostrofu przed wartością komórki w programie Excel. Technika ta jest szczególnie przydatna podczas pracy z kodami produktów, numerami telefonów lub innymi danymi, które powinny pozostać w postaci tekstu. Aby uzyskać więcej informacji na temat zaawansowanej manipulacji ciągami znaków, zapoznaj się z instrukcją zapisywania wartości z Excela w .NET.

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-stringvalue.cs
// Assign value as string
workSheet["A1"].StringValue = "4402-12";
' Assign value as string
workSheet("A1").StringValue = "4402-12"
$vbLabelText   $csharpLabel

Jak korzystać z wbudowanych formatów w IronXL?

Biblioteka IronXL oferuje szereg predefiniowanych ciągów formatujących, do których można uzyskać dostęp za pośrednictwem klasy IronXl.Formatting.BuiltinFormats w celu formatowania komórek programu Excel. Pozwala to dostosować sposób wyświetlania danych w arkuszach kalkulacyjnych programu Excel. Te wbudowane formaty obejmują najczęstsze scenariusze biznesowe i są kompatybilne ze wszystkimi wersjami programu Excel.

Podczas programowego tworzenia arkuszy kalkulacyjnych stosowanie spójnego formatowania ma kluczowe znaczenie dla zachowania profesjonalnych standardów w dokumentach. Klasa BuiltinFormats udostępnia ponad 30 wstępnie skonfigurowanych wzorców formatowania, które odpowiadają standardowym opcjom formatowania programu Excel.

:path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format-builtin-formats.cs
using IronXL;
using IronXL.Formatting;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Use builtin formats
workSheet["A1"].Value = 123;
workSheet["A1"].FormatString = BuiltinFormats.Accounting0;

workBook.SaveAs("builtinDataFormats.xlsx");
Imports IronXL
Imports IronXL.Formatting

' Create a new workbook
Private workBook As WorkBook = WorkBook.Create()
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Use builtin formats
Private workSheet("A1").Value = 123
Private workSheet("A1").FormatString = BuiltinFormats.Accounting0

workBook.SaveAs("builtinDataFormats.xlsx")
$vbLabelText   $csharpLabel

Jakie wbudowane formaty danych są dostępne?

W przypadku typu Duration wartości wejściowe są wyrażone w dniach. Na przykład 1 dzień to 24 godziny, a 1,05 dnia to 25 godzin i 12 minut. Jest to szczególnie przydatne podczas pracy z danymi programu Excel, które dotyczą śledzenia czasu pracy lub zarządzania projektami. Oto dostępne typy formatów:

Arkusz kalkulacyjny Excel przedstawiający wbudowane formaty liczb wraz z wartościami wejściowymi i sformatowanymi wynikami dla różnych typów danych

Do czego służą poszczególne typy formatów?

  • General: Format domyślny wyświetlający liczby bez konkretnego formatowania.
  • Duration1: Pokazuje czas trwania w minutach i sekundach w formacie "mm:ss".
  • Duration2: Pokazuje czas trwania w godzinach, minutach i sekundach w formacie "[h]:mm:ss".
  • Duration3: Pokazuje czas trwania w minutach, sekundach i milisekundach w formacie "mm:ss.0".
  • Accounting0: Format księgowy bez miejsc po przecinku, nawiasy dla liczb ujemnych, np. "#,##0_);(#,##0)".
  • Accounting0Red: Format księgowy bez miejsc po przecinku, kolor czerwony dla wartości ujemnych, np. "#,##0_);Red."
  • Accounting2: Format księgowy z dwoma miejscami po przecinku, nawiasy dla wartości ujemnych, np. "#,##0.00;(#,##0.00)".
  • Accounting2Red: Format księgowy z dwoma miejscami po przecinku, czerwony dla wartości ujemnych, np. "#,##0.00_);Red."
  • Time1: Format 12-godzinny z oznaczeniem AM/PM, np. "h:mm AM/PM".
  • Time2: Format 12-godzinny z sekundami i oznaczeniem AM/PM, np. "h:mm:ss AM/PM".
  • Time3: Format 24-godzinny bez sekund, np. "h:mm".
  • Time4: format 24-godzinny z sekundami, np. "h:mm:ss".
  • ShortDate: Krótki format daty, np. "m/d/rr".
  • ShortDateAndTime: Krótki format daty i godziny, np. "m/d/rr h:mm".
  • LongDate1: Długa data z miesiącem, dniem i rokiem w formacie "d-mmm-rr".
  • LongDate2: Długa data z dniem i skróconym miesiącem, np. "d-mmm".
  • LongDate3: Długa data ze skróconym miesiącem i rokiem, np. "mmm-rr".
  • Fraction1: Wartości ułamkowe z jedną cyfrą, takie jak "# ?/?".
  • Fraction2: Wartości ułamkowe z dwoma cyframi, takie jak "# ??/??".
  • Scientific1: Notacja naukowa z jednym miejscem po przecinku, np. "##0.0E+0."
  • Scientific2: Notacja naukowa z dwoma miejscami po przecinku, np. "0,00E+00".
  • Percent: Procenty bez miejsc po przecinku, np. "0%".
  • Percent2: Procent z dwoma miejscami po przecinku, np. "0,00%".
  • Currency0: Waluta bez miejsc po przecinku, nawiasy dla wartości ujemnych, np. "$#,##0_);($#,##0)".
  • Currency0Red: Waluta bez miejsc po przecinku, kolor czerwony dla wartości ujemnych, np. "$#,##0_);Red."
  • Currency2: Waluta z dwoma miejscami po przecinku, nawiasy dla wartości ujemnych, np. "$#,##0.00;($#,##0.00)".
  • Currency2Red: Waluta z dwoma miejscami po przecinku, czerwona dla wartości ujemnych, np. "$#,##0.00_);Red."
  • Thousands0: Liczby z separatorem tysięcy, bez miejsc po przecinku, np. "#,##0".
  • Thousands2: Liczby z separatorem tysięcy, dwa miejsca po przecinku, np. "#,##0.00".
  • Number0: Liczby bez miejsc po przecinku, np. "0".
  • Number2: Liczby z dwoma miejscami po przecinku, np. "0,00".
  • Text: Format zwykłego tekstu, np. "@."

Formatowanie danych i formatowanie liczb w programie Excel kontroluje sposób wyświetlania liczb, dat, godzin i innych danych w komórkach, poprawiając czytelność i zapewniając dokładność danych. Dzięki formatom danych możesz przedstawiać informacje w określonych formatach, takich jak wartości procentowe lub waluty. Podobnie formaty liczb pozwalają dostosować liczbę miejsc po przecinku i opcje wyświetlania.

Jak zastosować wiele formatów do różnych zakresów?

W rzeczywistych zastosowaniach często trzeba zastosować różne formaty do różnych części arkusza kalkulacyjnego. Ten przykład pokazuje formatowanie raportu finansowego zawierającego wiele typów danych. Takie podejście jest szczególnie przydatne podczas eksportowania do programu Excel w języku C# z baz danych lub innych źródeł danych:

using IronXL;
using IronXl.Formatting;
using System;

// Create a financial report with multiple formats
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Headers
workSheet["A1"].Value = "Financial Report Q4 2023";
workSheet["A1"].Style.Font.Bold = true;

// Revenue section with currency formatting
workSheet["A3"].Value = "Revenue";
workSheet["B3"].Value = 2500000;
workSheet["B3"].FormatString = BuiltinFormats.Currency0;

// Growth percentage
workSheet["A4"].Value = "YoY Growth";
workSheet["B4"].Value = 0.157;
workSheet["B4"].FormatString = BuiltinFormats.Percent2;

// Date formatting
workSheet["A6"].Value = "Report Date";
workSheet["B6"].Value = DateTime.Now;
workSheet["B6"].FormatString = BuiltinFormats.LongDate1;

// Apply accounting format to expense columns
IronXl.Range expenseRange = workSheet["B8:B12"];
expenseRange.FormatString = BuiltinFormats.Accounting2Red;

// Save the formatted report
workBook.SaveAs("FinancialReport_Q4_2023.xlsx");
using IronXL;
using IronXl.Formatting;
using System;

// Create a financial report with multiple formats
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Headers
workSheet["A1"].Value = "Financial Report Q4 2023";
workSheet["A1"].Style.Font.Bold = true;

// Revenue section with currency formatting
workSheet["A3"].Value = "Revenue";
workSheet["B3"].Value = 2500000;
workSheet["B3"].FormatString = BuiltinFormats.Currency0;

// Growth percentage
workSheet["A4"].Value = "YoY Growth";
workSheet["B4"].Value = 0.157;
workSheet["B4"].FormatString = BuiltinFormats.Percent2;

// Date formatting
workSheet["A6"].Value = "Report Date";
workSheet["B6"].Value = DateTime.Now;
workSheet["B6"].FormatString = BuiltinFormats.LongDate1;

// Apply accounting format to expense columns
IronXl.Range expenseRange = workSheet["B8:B12"];
expenseRange.FormatString = BuiltinFormats.Accounting2Red;

// Save the formatted report
workBook.SaveAs("FinancialReport_Q4_2023.xlsx");
Imports IronXL
Imports IronXl.Formatting
Imports System

' Create a financial report with multiple formats
Dim workBook As WorkBook = WorkBook.Create()
Dim workSheet As WorkSheet = workBook.DefaultWorkSheet

' Headers
workSheet("A1").Value = "Financial Report Q4 2023"
workSheet("A1").Style.Font.Bold = True

' Revenue section with currency formatting
workSheet("A3").Value = "Revenue"
workSheet("B3").Value = 2500000
workSheet("B3").FormatString = BuiltinFormats.Currency0

' Growth percentage
workSheet("A4").Value = "YoY Growth"
workSheet("B4").Value = 0.157
workSheet("B4").FormatString = BuiltinFormats.Percent2

' Date formatting
workSheet("A6").Value = "Report Date"
workSheet("B6").Value = DateTime.Now
workSheet("B6").FormatString = BuiltinFormats.LongDate1

' Apply accounting format to expense columns
Dim expenseRange As IronXl.Range = workSheet("B8:B12")
expenseRange.FormatString = BuiltinFormats.Accounting2Red

' Save the formatted report
workBook.SaveAs("FinancialReport_Q4_2023.xlsx")
$vbLabelText   $csharpLabel

Ten przykład pokazuje, w jaki sposób różne typy formatów łączą się, tworząc profesjonalne dokumenty finansowe. Aby uzyskać bardziej zaawansowane opcje formatowania, w tym formatowanie warunkówe, można rozszerzyć te koncepcje.

Podczas pracy z dużymi zbiorami danych lub programowego tworzenia raportów kluczowe znaczenie ma spójne formatowanie. System formatowania IronXL płynnie integruje się z innymi funkcjami, takimi jak funkcje matematyczne i edycja formuł, umożliwiając tworzenie w pełni zautomatyzowanych rozwiązań do raportowania.

Dla programistów przechodzących z Office Interop lub poszukujących lepszej wydajności system formatowania IronXL zapewnia znaczną przewagę. W przeciwieństwie do tradycyjnych metod, można efektywnie formatować tysiące komórek bez obciążenia związanego z interoperacyjnością COM. Aby dowiedzieć się więcej o najlepszych praktykach w zakresie automatyzacji programu Excel, zapoznaj się z naszą obszerną dokumentacją dotyczącą programu Excel.

Często Zadawane Pytania

Jak formatowac komorki Excel w C# bez uzycia Interop?

IronXL oferuje prosty sposob na formatowanie komorek Excel bez zaleznosci Interop. Mozesz uzyc wlasciwosci FormatString dla komorek lub zakresow, aby zastosowac wbudowane formaty, takie jak waluta, procenty, daty i niestandardowe formaty liczbowe. Po prostu utworz lub otworz skoroszyt z IronXL i ustaw wlasciwosc FormatString na pozadany format.

Jaki jest najszybszy sposob zastosowania formatowania waluty do komorki?

Z IronXL mozesz zastosowac formatowanie waluty w zaledwie jednej linii kodu. Po utworzeniu skoroszytu, po prostu uzyj: book.DefaultWorkSheet["B2"].FormatString = IronXl.Formatting.BuiltinFormats.Currency2; To zastosuje wbudowany format waluty z 2 miejscami po przecinku do komorki B2.

Czy moge formatowac wiele komorek naraz?

Tak, IronXL pozwala na formatowanie pojedynczych komorek, calej kolumny, wierszy lub dowolnego wybranego zakresu za pomoca wlasciwosci FormatString. Ta elastycznosc ułatwia zastosowanie jednolitego formatowania w wielu komorkach arkusza kalkulacyjnego Excel bez koniecznosci iteracji przez kazda komorke oddzielnie.

Jak uniknac automatycznej konwersji danych przy ustawianiu wartosci komorki?

IronXL zapewnia wlasciwosc StringValue, aby ustawic wartosci komorek jako ciagi znakow bez automatycznej konwersji. Zamiast uzywac wlasciwosci Value, uzyj StringValue, aby przypisac dokladna wartosc do komorki. Dziala to podobnie do stawiania apostrofu przed wartoscia komorki w Excel i jest szczegolnie uzyteczne dla kodow produktow, numerow telefonow lub innych danych, ktore powinny pozostac w formie tekstowej.

Jakie sa dostepne opcje wbudowanych formatow?

IronXL oferuje obszerny zbior gotowych ciagow formatow za pomoca klasy IronXl.Formatting.BuiltinFormats. Obejmuja one rozne formaty walutowe, daty i czasu, wyswietlanie procentow, zapis naukowy i niestandardowe formaty liczbow. Pozwala to dostosowac sposob wyswietlania danych w arkuszach kalkulacyjnych Excel.

Czy muszę zainstalować Microsoft Excel, aby korzystac z funkcji formatowania komorek?

Nie, IronXL dziala niezaleznie, bez wymagania Microsoft Excel lub zaleznosci Interop. Biblioteka zawiera wlasny silnik formatowania, ktory bezposrednio manipuluje plikami Excel, co czyni go idealnym do zastosowania w srodowiskach serwerowych lub systemach, gdzie Excel nie jest zainstalowany.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 2,052,917 | Wersja: 2026.6 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronXL.Excel
uruchom próbkę zobacz, jak Twoje dane stają się arkuszem.