Comment définir les formats de données des cellules dans Excel

Comment définir les formats de données des cellules en C# ; avec IronXL

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

IronXL permet de formater les cellules Excel avec des formats de données intégrés comme la monnaie, les pourcentages, les dates et les formats de nombres personnalisés en définissant la propriété FormatString sur les cellules ou les plages sans dépendances Interop.

Démarrage rapide : Appliquer un format intégré à une seule cellule en une seule ligne

Cet exemple montre comment créer un nouveau classeur Excel et appliquer un format intégré à une cellule spécifique à l'aide de l'API d'IronXL. Aucune dépendance interopérationnelle n'est nécessaire - il suffit de définir FormatString et d'enregistrer.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronXL avec le gestionnaire de packages NuGet

    PM > Install-Package IronXL.Excel

  2. Copiez et exécutez cet extrait de code.

    IronXL.WorkBook book = IronXL.WorkBook.Create(); book.DefaultWorkSheet["B2"].FormatString = IronXL.Formatting.BuiltinFormats.Currency2;
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronXL dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer


Comment définir les formats de données des cellules dans Excel?

La propriété FormatString est accessible à la fois via les cellules et les plages. Il est donc possible de définir des formats de données pour chaque cellule, colonne, ligne et toute plage sélectionnée. Cette flexibilité rend IronXL particulièrement puissant lorsque vous devez travailler avec des fichiers Excel en C# sans Interop.

Le formatage des données est essentiel pour présenter clairement les informations dans les feuilles de calcul. Qu'il s'agisse de créer des rapports financiers avec des valeurs monétaires, des données scientifiques avec des décimales précises ou des analyses basées sur des dates, un formatage approprié garantit que vos données sont à la fois lisibles et professionnelles. IronXL simplifie ce processus en fournissant un accès direct au moteur de mise en forme d'Excel par le biais d'une API simple.

: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");
$vbLabelText   $csharpLabel
Feuille de calcul Excel montrant des cellules formatées : pourcentage, nombre et valeurs de date/heure dans différents formats d'affichage

Comment puis-je définir des valeurs de cellules en tant que chaînes de caractères sans conversion?

Lors de la définition de la valeur dans IronXL, utilisez StringValue au lieu de Value pour attribuer directement la valeur exacte à la cellule sans conversion automatique. Cela revient à placer une apostrophe devant la valeur d'une cellule dans Excel. Cette technique est particulièrement utile lorsqu'il s'agit de codes de produits, de numéros de téléphone ou d'autres données qui doivent rester sous forme de texte. Pour une manipulation plus avancée des chaînes de caractères, voyez comment écrire des valeurs Excel en .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";
$vbLabelText   $csharpLabel

Comment utiliser les formats intégrés dans IronXL?

La bibliothèque IronXL propose diverses chaînes de format prédéfinies accessibles via la classe IronXL.Formatting.BuiltinFormats pour la mise en forme des cellules Excel. Cela vous permet de personnaliser l'affichage des données dans vos feuilles de calcul Excel. Ces formats intégrés couvrent les scénarios commerciaux les plus courants et sont compatibles avec toutes les versions d'Excel.

Lorsque création de feuilles de calcul par programme, l'application d'une mise en forme cohérente est cruciale pour maintenir des normes professionnelles dans l'ensemble de vos documents. La classe BuiltinFormats fournit plus de 30 modèles de format préconfigurés qui correspondent aux options de formatage standard d'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");
$vbLabelText   $csharpLabel

Quels sont les formats de données intégrés disponibles ?

Pour le type Duration , les valeurs d'entrée sont exprimées en jours. Par exemple, 1 jour équivaut à 24 heures, et 1,05 jour équivaut à 25 heures et 12 minutes. Ceci est particulièrement utile lorsque travaille avec des données Excel qui impliquent le suivi du temps ou la gestion de projet. Voici les types de format disponibles :

Feuille de calcul Excel montrant des formats de nombres intégrés avec des valeurs d'entrée et des sorties formatées pour divers types de données

Qu'est-ce que chaque type de format fait?

  • Général : Format par défaut affichant des nombres sans formatage spécifique.
  • Duration1 : Affiche la durée en minutes et secondes comme "mm:ss"
  • Duration2 : Affiche la durée en heures, minutes et secondes comme "[h]:mm:ss."
  • Duration3 : affiche la durée en minutes, secondes et millisecondes comme "mm:ss.0"
  • Comptabilité0 : Format comptable sans décimales, parenthèses pour les négations comme "#,##0_) ;(#,##0)"
  • Comptabilité0Rouge : Format comptable sans décimales, rouge pour les négations comme "#,##0_);Red."
  • Comptabilité2 : Format comptable avec deux décimales, parenthèses pour les négations comme "#,##0.00 ;(#,##0.00)."
  • Comptabilité2Rouge : Format de comptabilité avec deux décimales, rouge pour les négatives comme "#,##0.00_);Red."
  • Time1 : format 12 heures avec AM/PM comme "h:mm AM/PM"
  • Time2 : format 12 heures avec secondes et AM/PM comme "h:mm:ss AM/PM"
  • Time3 : format de 24 heures sans les secondes comme "h:mm."
  • Time4 : format de 24 heures avec des secondes comme "h:mm:ss."
  • ShortDate : format de date court comme "m/d/yy"
  • ShortDateAndTime : format court de date et d'heure tel que "m/d/yy h:mm."
  • LongDate1 : Date longue avec le mois, le jour, l'année comme "d-mmm-yy"
  • Date longue2 : Date longue avec le jour et le mois abrégé comme "d-mmm"
  • Date longue3 : Date longue avec mois et année abrégés comme "mmm-yy"
  • Fraction1 : Valeurs fractionnaires avec un chiffre comme "# ?/ ?"
  • Fraction2 : Valeurs fractionnaires à deux chiffres comme "# ??/ ??"
  • Scientifique1 : notation scientifique avec une décimale comme "##0.0E+0"
  • Scientific2 : notation scientifique avec deux décimales comme "0.00E+00"
  • Pourcentage : Pourcentage sans décimales comme "0%"
  • Percent2 : Pourcentage avec deux décimales comme "0,00%"
  • Monnaie0 : Monnaie sans décimales, parenthèses pour les négations comme "$#,##0_) ;($#,##0)."
  • Monnaie0Rouge : Monnaie sans décimales, rouge pour les négatives comme "$#,##0_);Red"
  • Monnaie2 : Monnaie avec deux décimales, parenthèses pour les négations comme "$#,##0.00 ;($#,##0.00)"
  • Monnaie2Rouge : Monnaie avec deux décimales, rouge pour les négatives comme "$#,##0.00_);Red"
  • Milliers0 : nombres avec séparateur de milliers, sans décimales comme "#,##0"
  • Thousands2 : Nombres avec séparateur de milliers, deux décimales comme "#,##0.00."
  • Nombre0 : Les nombres sans décimales comme "0"
  • Number2 : Les nombres avec deux décimales comme "0.00"
  • Texte : Format de texte brut comme "@."

Le formatage des données et des nombres dans Excel contrôle la manière dont les nombres, les dates, les heures et d'autres données s'affichent dans les cellules, améliorant ainsi la lisibilité et garantissant l'exactitude des données. Grâce aux formats de données, vous pouvez présenter les informations dans des formats spécifiques tels que les pourcentages ou les devises. De même, les formats numériques vous permettent de personnaliser le nombre de décimales et les options d'affichage.

Comment appliquer plusieurs formats à différentes plages ?

Dans les applications réelles, vous devez souvent appliquer différents formats à diverses parties de votre feuille de calcul. Cet exemple montre le formatage d'un rapport financier avec plusieurs types de données. Cette approche est particulièrement utile lors de l'exportation vers Excel en C# à partir de bases de données ou d'autres sources de données :

/* :path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format-financial-report.cs */
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");
/* :path=/static-assets/excel/content-code-examples/how-to/set-cell-data-format-financial-report.cs */
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");
$vbLabelText   $csharpLabel

Cet exemple montre comment différents types de formats se combinent pour créer des documents financiers professionnels. Pour des options de formatage plus avancées, y compris formatage conditionnel, vous pouvez approfondir ces concepts.

Lorsque l'on travaille avec de grands ensembles de données ou que l'on crée des rapports par programme, il est essentiel que le formatage soit cohérent. Le système de formatage d'IronXL s'intègre parfaitement à d'autres fonctionnalités telles que fonctions mathématiques et formules d'édition, ce qui vous permet de créer des solutions de reporting entièrement automatisées.

Pour les développeurs qui migrent depuis Office Interop ou qui recherchent de meilleures performances, le système de formatage d'IronXL offre un avantage significatif. Contrairement aux approches traditionnelles, vous pouvez formater des milliers de cellules efficacement sans surcharge d'interopérabilité COM. Pour en savoir plus sur les meilleures pratiques d'automatisation d'Excel, consultez notre documentation complète sur Excel.

Questions Fréquemment Posées

Comment formater des cellules Excel en C# sans utiliser Interop ?

IronXL fournit un moyen simple de formater les cellules Excel sans dépendances Interop. Vous pouvez utiliser la propriété FormatString sur les cellules ou les plages pour appliquer des formats intégrés tels que les devises, les pourcentages, les dates et les formats de nombres personnalisés. Il suffit de créer ou d'ouvrir un classeur avec IronXL et de définir la propriété FormatString sur le format souhaité.

Quel est le moyen le plus rapide d'appliquer un formatage monétaire à une cellule ?

Avec IronXL, vous pouvez appliquer le formatage des devises en une seule ligne de code. Après avoir créé un classeur, utilisez simplement : book.DefaultWorkSheet["B2"].FormatString = IronXL.Formatting.BuiltinFormats.Currency2 ; Ceci applique le format de devise intégré avec 2 décimales à la cellule B2.

Puis-je formater plusieurs cellules à la fois ?

Oui, IronXL vous permet de formater des cellules individuelles, des colonnes entières, des lignes ou toute plage sélectionnée par le biais de la propriété FormatString. Cette flexibilité permet d'appliquer facilement un formatage cohérent à plusieurs cellules de votre feuille de calcul Excel sans avoir à parcourir chaque cellule individuellement.

Comment empêcher la conversion automatique des données lors de la définition des valeurs des cellules ?

IronXL fournit la propriété StringValue pour définir les valeurs des cellules en tant que chaînes de caractères sans conversion automatique. Au lieu d'utiliser la propriété Value, utilisez StringValue pour assigner la valeur exacte à la cellule. Cela revient à placer une apostrophe avant la valeur de la cellule dans Excel et est particulièrement utile pour les codes de produits, les numéros de téléphone ou d'autres données qui doivent rester sous forme de texte.

Quelles sont les options de format intégrées disponibles ?

IronXL propose une collection complète de chaînes de format prédéfinies par le biais de la classe IronXL.Formatting.BuiltinFormats. Il s'agit notamment de divers formats de devises, de dates et d'heures, d'affichages de pourcentages, de notations scientifiques et de formats de nombres personnalisés, ce qui vous permet de personnaliser la manière dont les données sont affichées dans vos feuilles de calcul Excel.

Dois-je installer Microsoft Excel pour utiliser les fonctions de mise en forme des cellules ?

Non, IronXL fonctionne de manière indépendante, sans nécessiter de dépendances Microsoft Excel ou Interop. La bibliothèque comprend son propre moteur de formatage qui manipule directement les fichiers Excel, ce qui la rend idéale pour les environnements de serveur ou les systèmes où Excel n'est pas installé.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 1,802,965 | Version : 2025.12 vient de sortir