
Comment ouvrir un fichier Excel et écrire des données en C#
Cet article explorera la bibliothèque IronXL pour démontrer comment ouvrir un fichier Microsoft Excel et y écrire des données dans une application console C#.
IronXL - Une bibliothèque Excel
IronXL est une bibliothèque Excel .NET qui facilite la création, la lecture et la modification de fichiers Excel dans les applications C#. Il offre des performances exceptionnelles et une précision de sortie optimale. La bibliothèque prend en charge tous les formats de fichiers de classeurs Excel , notamment XLS, XLSX, XLSM, CSV et TSV. De plus, elle permet d'enregistrer ou d'exporter des données dans des formats tels que JSON, HTML, binaire, tableau d'octets, DataSet ou DataTable .
Avec IronXL, les développeurs peuvent travailler en toute transparence avec les feuilles de calcul et les plages de cellules. Il offre la possibilité de modifier les formules et de les recalculer facilement au sein d'une feuille de calcul. Le tri des données en fonction de la plage, de la colonne ou de la ligne est simple. La bibliothèque offre des fonctionnalités permettant de modifier les mises en page, telles que le gel des volets , le dimensionnement automatique des lignes/colonnes et l'ajout/la suppression de lignes/colonnes .
IronXL permet également de protéger les fichiers Excel par des mots de passe utilisateur et des autorisations de modification. Une autre fonctionnalité notable est la possibilité d'ajouter, de supprimer et d'extraire des images à partir de feuilles de calcul Excel. La bibliothèque offre un large éventail de fonctions Excel, prenant en charge différents formats de données cellulaires . Ces fonctionnalités font d'IronXL l'une des API les plus conviviales pour travailler avec des fichiers Excel.
L'un des principaux avantages d'IronXL est qu'il ne nécessite pas l'installation de Microsoft Excel sur la machine, éliminant ainsi le besoin d'Office Interop ou de toute autre dépendance. Il est compatible avec de multiples plateformes et prend en charge .NET 7, 6 et 5. Il est également compatible avec .NET Core 2 et 3, ainsi qu'avec .NET Framework 4.5 et versions ultérieures pour l'utilisation avec les feuilles de calcul Excel.
Créer une application console
Il est recommandé d'utiliser la dernière version de l'IDE Visual Studio pour créer l'application. Visual Studio est l'environnement de développement intégré (IDE) officiel pour le développement C#, et il est supposé que vous l'avez déjà installé. Si vous n'avez pas installé Visual Studio, vous pouvez le télécharger depuis le site Web officiel de Microsoft Visual Studio .
Suivez ces étapes pour créer un nouveau projet nommé " DemoApp ".
- Ouvrez Visual Studio et cliquez sur Créer un nouveau projet
Nouveau projet
- Sélectionnez Application console et cliquez sur Suivant
Nouveau type de projet
- Saisissez le nom du projet
Nouveau nom de projet
- Sélectionnez la version .NET. Choisissez la version stable .NET 6.0.
Informations complémentaires sur le nouveau projet
Installer la bibliothèque IronXL
Une fois le projet créé, la bibliothèque IronXL doit être installée dans le projet pour pouvoir l'utiliser. Suivez ces étapes pour l'installer.
- Ouvrez " Gérer les packages NuGet pour les solutions " depuis l'Explorateur de solutions ou Outils.
Gestionnaire de packages NuGet
- Recherchez la bibliothèque IronXL et sélectionnez le projet actuel. Cliquez sur installer.
Recherche et installation du package IronXL dans l'interface utilisateur du gestionnaire de packages NuGet
Ajoutez l'espace de noms suivant en haut du fichier Program.cs
using IronXL;Imports IronXLOpen an Existing Excel File in C#
IronXL permet d'ouvrir un fichier Excel existant ou d'en créer un nouveau. Cet exemple illustre l'ouverture d'un fichier existant à l'aide d'IronXL en C#.
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");' Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")Maintenant, sélectionnons sa première feuille de calcul. Vous pouvez sélectionner une feuille de calcul par numéro d'index ou par nom. La propriété DefaultWorkSheet peut aider à obtenir la première feuille.
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Select worksheet by name
WorkSheet ws = workBook.GetWorkSheet("Sheet1");
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;' Select worksheet at index 0
Dim workSheet As WorkSheet = workBook.WorkSheets(0)
' Select worksheet by name
Dim ws As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Get any existing worksheet
Dim firstSheet As WorkSheet = workBook.DefaultWorkSheetLe code ci-dessus extrait la première feuille du classeur Excel. Pour créer un nouveau fichier Excel contenant des données, consultez cette page d'exemples de code .
À présent, écrivons des données dans le fichier Excel en utilisant la bibliothèque d'objets IronXL.
Write Data to Excel File in C#
Écrire des données dans un fichier Excel avec IronXL est très facile. Il existe plusieurs façons d'y parvenir, mais la méthode la plus simple consiste à utiliser la référence de cellule Excel.
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";' Access A1 cell and write the value
workSheet("A1").Value = "Value using cell reference"Il est également possible d'écrire des données dans une plage de cellules. Le code suivant écrit les données des cellules B1 à B5.
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";' Write the same value to cells from B1 to B5
workSheet("B1:B5").Value = "Range value"Nous pouvons également remplir la plage avec une boucle for, ce qui la rend dynamique. Le code se présente comme suit :
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}' Specify range in which we want to write the values
For i As Integer = 1 To 5
' Write the Dynamic value in column C
workSheet("C" & i).Value = "Value: " & i
' Write the Dynamic value in column D
workSheet("D" & i).Value = "Value: " & i
Next iUne autre façon d'écrire des données dans un fichier Excel est d'utiliser la méthode Replace.
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");' Replace the value in cell D5
workSheet("D5").Replace("Value: 5", "Replaced Value")Save an Excel File in C#
Cette section explique comment enregistrer le fichier Excel avec le nouveau contenu ajouté.
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");' Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx")Le code complet se présente comme suit :
using System;
using IronXL;
class Program
{
static void Main(string[] args)
{
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
Console.WriteLine("Successfully written to Excel File");
}
}Imports System
Imports IronXL
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Select worksheet at index 0
Dim workSheet As WorkSheet = workBook.WorkSheets(0)
' Access A1 cell and write the value
workSheet("A1").Value = "Value using cell reference"
' Write the same value to cells from B1 to B5
workSheet("B1:B5").Value = "Range value"
' Specify range in which we want to write the values
For i As Integer = 1 To 5
' Write the Dynamic value in column C
workSheet("C" & i).Value = "Value: " & i
' Write the Dynamic value in column D
workSheet("D" & i).Value = "Value: " & i
Next i
' Replace the value in cell D5
workSheet("D5").Replace("Value: 5", "Replaced Value")
' Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx")
Console.WriteLine("Successfully written to Excel File")
End Sub
End ClassPour plus d'informations sur la façon de lire les données d'un fichier Excel en C#, consultez cet exemple .
Sortie
Le résultat du fichier est :
Le fichier Excel de sortie
Résumé
Cet article a démontré comment écrire des données dans des fichiers Excel en C# à l'aide d'IronXL. IronXL offre la possibilité de travailler sans aucun problème avec les fichiers Excel existants. Il vous permet également de créer de nouveaux fichiers Excel et d'y écrire des données grâce à une syntaxe simple. IronXL peut également être utilisé pour lire des fichiers Excel sans que l'application Microsoft Excel soit installée. Pour lire des données à partir de fichiers Excel, vous pouvez consulter cette page d'exemple de code .
IronXL est gratuit pour le développement et peut être utilisé sous licence à des fins commerciales. Vous pouvez également essayer la version d'essai gratuite d'IronXL pour un usage commercial.

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 et créer des manuels bien structurés et visuellement attrayants.
Articles connexes



