Passer au contenu du pied de page
UTILISATION D'IRONXL

Générer des fichiers Excel en C#

Les applications que nous développons communiquent constamment avec les feuilles de calcul Excel pour obtenir des données à évaluer et des résultats. Il est vraiment utile de pouvoir générer des fichiers Excel en C# de manière programmée, nous faisant gagner du temps et des efforts avec notre développement. Dans ce tutoriel, nous apprendrons à générer des fichiers Excel dans différents formats, à définir des styles de cellules et à insérer des données en utilisant une programmation C# efficace.

Générateur de fichiers Excel C#

  • Générer des fichiers Excel avec IronXL
  • Générer des fichiers Excel C# aux formats .XLSX et .XLS
  • Générer des fichiers CSV
  • Générez des fichiers JSON, XML, TSV et plus encore dans des projets C#
How To Work related to Générer des fichiers Excel en C#

Étape 1

1. Générer des fichiers Excel avec IronXL

Générez des fichiers Excel en utilisant la bibliothèque IronXL Excel pour C#, fournissant une gamme de fonctions pour générer et manipuler des données dans votre projet. La bibliothèque est gratuite pour le développement, avec des licences disponibles lorsque vous êtes prêt à passer en production. Pour suivre ce tutoriel, vous pouvez télécharger IronXL pour générer ou y accéder via Visual Studio et la galerie NuGet.


dotnet add package IronXL.Excel

Didacticiel de prise en main

2. Aperçu du générateur de fichiers Excel C

Dans le développement d'applications métier, nous devons souvent générer différents types de fichiers Excel par programmation. Pour cela, nous avons besoin de la manière la plus simple et la plus rapide pour générer différents types de fichiers et les enregistrer automatiquement à l'emplacement requis.

Après avoir installé IronXL, nous pouvons utiliser les fonctions pour générer différents types de fichiers Excel:

  • Fichier Excel avec l'extension .xlsx.
  • Fichier Excel avec l'extension .xls.
  • Fichiers Valeurs Séparées par des Virgules (.csv).
  • Fichiers Valeurs Séparées par des Tabulations (.tsv).
  • Fichiers JavaScript Object Notation (.json).
  • Fichiers Langage de Balisage Extensible (.xml).

Pour générer tout type de fichier, il faut d'abord créer une WorkBook Excel.

// Generate a new WorkBook
WorkBook wb = WorkBook.Create();
// Generate a new WorkBook
WorkBook wb = WorkBook.Create();
' Generate a new WorkBook
Dim wb As WorkBook = WorkBook.Create()
$vbLabelText   $csharpLabel

La ligne de code ci-dessus créera un nouveau WorkBook nommé wb. Maintenant, nous allons créer un objet WorkSheet.

// Generate a new WorkSheet
WorkSheet ws = wb.CreateWorkSheet("SheetName");
// Generate a new WorkSheet
WorkSheet ws = wb.CreateWorkSheet("SheetName");
' Generate a new WorkSheet
Dim ws As WorkSheet = wb.CreateWorkSheet("SheetName")
$vbLabelText   $csharpLabel

Cela créera un WorkSheet nommé ws que nous pourrons utiliser pour insérer des données dans des fichiers Excel.


3. Générer un fichier XLSX C#

Tout d'abord, nous suivons les étapes ci-dessus pour générer le WorkBook et le WorkSheet.

Ensuite, nous insérons des données pour créer notre fichier avec l'extension .xlsx. Pour cela, IronXL fournit un système d'adressage de cellule qui nous permet d'insérer des données à une adresse de cellule spécifique par programmation.

// Insert data by cell addressing
ws["CellAddress"].Value = "MyValue";
// Insert data by cell addressing
ws["CellAddress"].Value = "MyValue";
' Insert data by cell addressing
ws("CellAddress").Value = "MyValue"
$vbLabelText   $csharpLabel

Il insérera une nouvelle valeur "MyValue" dans une adresse de cellule spécifique. De la même manière, nous pouvons insérer des données dans autant de cellules que nécessaire. Ensuite, nous enregistrons le fichier Excel dans le chemin spécifié comme suit:

// Specify file path and name
wb.SaveAs("Path + FileName.xlsx");
// Specify file path and name
wb.SaveAs("Path + FileName.xlsx");
' Specify file path and name
wb.SaveAs("Path + FileName.xlsx")
$vbLabelText   $csharpLabel

Cela créera un nouveau fichier Excel avec l'extension .xlsx dans le chemin spécifié. N'oubliez pas d'écrire l'extension .xlsx avec le nom du fichier lors de l'enregistrement.

Pour aller plus loin sur comment créer un WorkBook Excel dans un projet C#, consultez les exemples de code ici.

/**
 * Generate XLSX File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xlsx Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);

        // Create workSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";
        ws["C4"].Value = "IronXL";

        // Save the file as .xlsx
        wb.SaveAs("sample.xlsx");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XLSX File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xlsx Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);

        // Create workSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";
        ws["C4"].Value = "IronXL";

        // Save the file as .xlsx
        wb.SaveAs("sample.xlsx");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
'''
''' * Generate XLSX File
''' 
Imports System
Imports IronXL

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create new WorkBook of .xlsx Extension
		Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)

		' Create workSheet
		Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")

		' Insert data in the cells of WorkSheet
		ws("A1").Value = "Hello"
		ws("A2").Value = "World"
		ws("C4").Value = "IronXL"

		' Save the file as .xlsx
		wb.SaveAs("sample.xlsx")

		Console.WriteLine("Successfully created.")
		Console.ReadKey()
	End Sub
End Class
$vbLabelText   $csharpLabel

Vous pouvez voir une capture d'écran du fichier Excel nouvellement créé sample.xlsx ici:

Générer des fichiers Excel en C#, Figure 1 : Le résultat de la valeur modifiée dans la cellule C4 Le résultat de la valeur modifiée dans la cellule C4


4. Générer un fichier XLS C#

Il est également possible de générer des fichiers .xls en utilisant IronXL. Pour cela, nous utiliserons la fonction WorkBook.Create() comme suit:

// Create a workbook with XLS format
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
// Create a workbook with XLS format
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
' Create a workbook with XLS format
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
$vbLabelText   $csharpLabel

Cela créera un nouveau fichier Excel avec une extension .xls. Gardez à l'esprit qu'en attribuant un nom à un fichier Excel, vous devez écrire l'extension .xls avec le nom du fichier, comme ceci :

// Save the file as .xls
wb.SaveAs("Path + FileName.xls");
// Save the file as .xls
wb.SaveAs("Path + FileName.xls");
' Save the file as .xls
wb.SaveAs("Path + FileName.xls")
$vbLabelText   $csharpLabel

Voyons maintenant l'exemple de comment générer un fichier Excel avec une extension .xls :

/**
 * Generate XLS File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xls Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xls
        wb.SaveAs("sample.xls");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XLS File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook of .xls Extension
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xls
        wb.SaveAs("sample.xls");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
'''
''' * Generate XLS File
''' 
Imports System
Imports IronXL

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create new WorkBook of .xls Extension
		Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)

		' Create WorkSheet
		Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")

		' Insert data in the cells of WorkSheet
		ws("A1").Value = "Hello"
		ws("A2").Value = "World"

		' Save the file as .xls
		wb.SaveAs("sample.xls")

		Console.WriteLine("Successfully created.")
		Console.ReadKey()
	End Sub
End Class
$vbLabelText   $csharpLabel

5. Générer un fichier CSV C#

Les fichiers Valeurs Séparées par des Virgules (.csv) jouent également un rôle très important dans la conservation des données dans différents types d'organisations. Nous devons donc aussi apprendre à générer des fichiers .csv et à y insérer des données par programmation.

Nous pouvons utiliser le même processus que ci-dessus, mais nous devons spécifier l'extension .csv avec le nom du fichier lors de l'enregistrement. Voyons un exemple de la manière de créer des fichiers .csv dans notre projet C# :

/**
 * Generate CSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .csv
        wb.SaveAsCsv("sample.csv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate CSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .csv
        wb.SaveAsCsv("sample.csv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
'''
''' * Generate CSV File
''' 
Imports System
Imports IronXL

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create new WorkBook
		Dim wb As WorkBook = WorkBook.Create()

		' Create WorkSheet
		Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")

		' Insert data in the cells of WorkSheet
		ws("A1").Value = "Hello"
		ws("A2").Value = "World"

		' Save the file as .csv
		wb.SaveAsCsv("sample.csv")

		Console.WriteLine("Successfully created.")
		Console.ReadKey()
	End Sub
End Class
$vbLabelText   $csharpLabel

Pour pouvoir interagir davantage avec les fichiers CSV, vous pouvez suivre ce tutoriel pour lire un fichier .csv.


6. Générer un fichier TSV C#

Parfois, nous devons générer des fichiers Valeurs Séparées par des Tabulations (.tsv) et y insérer des données par programmation.

En utilisant IronXL, nous pouvons également générer des fichiers avec l'extension .tsv, y insérer des données, puis les enregistrer à l'emplacement souhaité.

Voyons l'exemple de comment générer des fichiers avec l'extension .tsv :

/**
 * Generate TSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .tsv
        wb.SaveAsTsv("sample.tsv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate TSV File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .tsv
        wb.SaveAsTsv("sample.tsv");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
'''
''' * Generate TSV File
''' 
Imports System
Imports IronXL

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create new WorkBook
		Dim wb As WorkBook = WorkBook.Create()

		' Create WorkSheet
		Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")

		' Insert data in the cells of WorkSheet
		ws("A1").Value = "Hello"
		ws("A2").Value = "World"

		' Save the file as .tsv
		wb.SaveAsTsv("sample.tsv")

		Console.WriteLine("Successfully created.")
		Console.ReadKey()
	End Sub
End Class
$vbLabelText   $csharpLabel

7. Générer un fichier JSON C#

Nous pouvons affirmer avec certitude que les fichiers JavaScript Object Notation (.json) sont les fichiers de données les plus courants et sont utilisés dans presque toutes les entreprises de développement de logiciels. Nous devons donc souvent enregistrer les données au format JSON. Pour cela, nous avons besoin de la méthode la plus simple pour générer des fichiers au format JSON et y insérer des données.

Dans de telles conditions, IronXL est la meilleure option qui nous permet de générer facilement ces fichiers pour C#. Prenons un exemple.

/**
 * Generate JSON File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "1";
        ws["A2"].Value = "john";
        ws["B1"].Value = "2";
        ws["B2"].Value = "alex";
        ws["C1"].Value = "3";
        ws["C2"].Value = "stokes";

        // Save the file as .json
        wb.SaveAsJson("sample.json");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate JSON File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "1";
        ws["A2"].Value = "john";
        ws["B1"].Value = "2";
        ws["B2"].Value = "alex";
        ws["C1"].Value = "3";
        ws["C2"].Value = "stokes";

        // Save the file as .json
        wb.SaveAsJson("sample.json");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
'''
''' * Generate JSON File
''' 
Imports System
Imports IronXL

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create new WorkBook
		Dim wb As WorkBook = WorkBook.Create()

		' Create WorkSheet
		Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")

		' Insert data in the cells of WorkSheet
		ws("A1").Value = "1"
		ws("A2").Value = "john"
		ws("B1").Value = "2"
		ws("B2").Value = "alex"
		ws("C1").Value = "3"
		ws("C2").Value = "stokes"

		' Save the file as .json
		wb.SaveAsJson("sample.json")

		Console.WriteLine("Successfully created.")
		Console.ReadKey()
	End Sub
End Class
$vbLabelText   $csharpLabel

Et consulter la capture d'écran du fichier JSON nouvellement créé sample.json :

Générer des fichiers Excel en C#, Figure 2 : Accéder au gestionnaire de packages NuGet dans Visual Studio Accéder au gestionnaire de packages NuGet dans Visual Studio


8. Générer un fichier XML C#

Dans le développement d'applications métier, nous devons souvent enregistrer les données au format de fichier Langage de Balisage Extensible (.xml). C'est important car les données de fichier .xml sont lisibles par les humains et les machines.

À travers les exemples suivants, nous apprendrons comment générer des fichiers .xml pour C# et insérer des données par programmation.

/**
 * Generate XML File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xml
        wb.SaveAsXml("sample.xml");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
/**
 * Generate XML File
 */
using System;
using IronXL;

class Program
{
    static void Main(string[] args)
    {
        // Create new WorkBook
        WorkBook wb = WorkBook.Create();

        // Create WorkSheet
        WorkSheet ws = wb.CreateWorkSheet("Sheet1");

        // Insert data in the cells of WorkSheet
        ws["A1"].Value = "Hello";
        ws["A2"].Value = "World";

        // Save the file as .xml
        wb.SaveAsXml("sample.xml");

        Console.WriteLine("Successfully created.");
        Console.ReadKey();
    }
}
'''
''' * Generate XML File
''' 
Imports System
Imports IronXL

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create new WorkBook
		Dim wb As WorkBook = WorkBook.Create()

		' Create WorkSheet
		Dim ws As WorkSheet = wb.CreateWorkSheet("Sheet1")

		' Insert data in the cells of WorkSheet
		ws("A1").Value = "Hello"
		ws("A2").Value = "World"

		' Save the file as .xml
		wb.SaveAsXml("sample.xml")

		Console.WriteLine("Successfully created.")
		Console.ReadKey()
	End Sub
End Class
$vbLabelText   $csharpLabel

Vous pouvez en savoir plus sur la conversion des feuilles de calcul et fichiers Excel par programme pour une utilisation dans les projets C#.

La bibliothèque IronXL offre également un large éventail de fonctionnalités pour interagir avec les fichiers Excel telles que le formatage des données de cellule, la fusion des cellules, l'insertion de fonctions mathématiques, et même la gestion des graphiques.


Accès rapide au tutoriel

Documentation du générateur IronXL

Consultez la documentation complète sur la façon dont IronXL génère des fichiers dans tous les formats Excel nécessaires à votre projet C#.

Documentation du générateur IronXL
Documentation related to Accès rapide au tutoriel

Questions Fréquemment Posées

Comment puis-je générer un fichier Excel en C# ?

Vous pouvez générer un fichier Excel en C# en utilisant IronXL. Commencez par créer un WorkBook et une WorkSheet, insérez vos données en utilisant le système d'adressage des cellules, et enregistrez le fichier avec le format souhaité en utilisant les méthodes de IronXL.

Quelles sont les étapes pour manipuler des fichiers Excel de manière programmatique en C# ?

Pour manipuler des fichiers Excel de manière programmatique en C#, installez IronXL via le gestionnaire de packages NuGet, créez un WorkBook et une WorkSheet, utilisez le code C# pour insérer et manipuler les données, et enregistrez les modifications dans votre format de fichier préféré.

Comment puis-je enregistrer un fichier Excel en JSON en utilisant C# ?

Avec IronXL, vous pouvez enregistrer un fichier Excel en JSON en créant un WorkBook et une WorkSheet, en ajoutant les données nécessaires, et en utilisant la méthode SaveAsJson pour exporter le fichier au format JSON.

Puis-je convertir un fichier Excel en CSV en utilisant C# ?

Oui, IronXL vous permet de convertir un fichier Excel en CSV en C#. Vous devez charger le fichier Excel dans un WorkBook, le traiter selon vos besoins, et utiliser la méthode SaveAsCsv pour l'exporter.

Quels formats puis-je utiliser pour exporter des données Excel en C# ?

Avec IronXL, vous pouvez exporter des données Excel dans divers formats tels que XLSX, CSV, TSV, JSON, et XML. Cette polyvalence est bénéfique pour différents besoins de traitement des données dans des projets C#.

Comment puis-je installer IronXL pour les opérations Excel en C# ?

Pour installer IronXL pour les opérations Excel en C#, utilisez le gestionnaire de packages NuGet dans Visual Studio avec la commande dotnet add package IronXL.Excel.

IronXL est-il adapté aux applications professionnelles impliquant des fichiers Excel ?

IronXL est très adapté aux applications professionnelles car il simplifie le processus de génération et de manipulation de fichiers Excel de manière programmatique, ce qui le rend efficace pour l'automatisation des tâches de traitement des données.

Puis-je utiliser IronXL gratuitement pendant le développement ?

IronXL est gratuit à utiliser à des fins de développement. Cependant, une licence est requise lorsque vous êtes prêt à déployer ou à utiliser la bibliothèque dans un environnement de production.

Comment puis-je styliser des cellules lors de la génération de fichiers Excel en C# ?

Lorsque vous utilisez IronXL, vous pouvez styliser des cellules dans les fichiers Excel générés en définissant des propriétés telles que la taille de police, la couleur, et les styles à travers les méthodes fournies par la bibliothèque.

Puis-je générer des fichiers XML à partir de données Excel en C# ?

Oui, vous pouvez générer des fichiers XML à partir de données Excel en utilisant IronXL. Après avoir préparé vos données dans un WorkBook et une WorkSheet, utilisez la méthode SaveAsXml pour exporter les données au format XML.

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite