using IronXL;
using System;
using System.Linq;
// Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select a cell and return the converted value
int cellValue = workSheet["A2"].IntValue;
// Read from ranges of cells elegantly.
foreach (var cell in workSheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Calculate aggregate values such as Min, Max and Sum
decimal sum = workSheet["A2:A10"].Sum();
// Linq compatible
decimal max = workSheet["A2:A10"].Max(c => c.DecimalValue);
Ouvrir un fichier Excel et écrire des données en C#
UTILISATION D'IRONXL
Comment ouvrir un fichier Excel et écrire des données en C#
Mise à jour mars 31, 2024
Partager:
Cet article explore 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 l'édition de fichiers Excel dans les applications C#. Il offre des performances exceptionnelles et des résultats précis. La bibliothèque soutienttous les formats de fichiers de classeurs Excelil permet de sauvegarder ou d'exporter des données dans des formats tels que XLS, XLSX, XLSM, CSV et TSV. En outre, il permet d'enregistrer ou d'exporter des données dans des formats tels que JSON, HTML, Binary, Byte Array,DataSet, ou DataTable.
Avec IronXL, les développeurs peuvent travailler avec des feuilles de calcul et des plages de cellules en toute transparence. Il permet de modifier les formules et de les recalculer facilement dans une feuille. Tri des données sur la base d'une plage, d'une colonne ou d'une ligne est simple. La bibliothèque propose des fonctions permettant de modifier les mises en page, telles quevitres de congélation, redimensionnement automatique des lignes/colonnesetajouter/supprimer des lignes/colonnes.
IronXL a égalementpermet de protéger de fichiers Excel avec des mots de passe d'utilisateur et des autorisations d'édition. Une autre caractéristique notable est la possibilité d'ajouter, de supprimer et d'extraire des images de feuilles de calcul Excel. La bibliothèque offre un large éventail de fonctions Excel, prenant en charge diversesformats de données cellulaires. Ces caractéristiques 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, ce qui élimine le besoin d'Office Interop ou d'autres dépendances. Il est compatible avec plusieurs 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 les versions ultérieures pour travailler avec les feuilles de calcul Excel.
Créer une application console
La dernière version de Visual Studio IDE est recommandée pour créer l'application. Visual Studio est l'IDE officiel pour le développement C#, et l'on suppose que vous l'avez déjà installé. Si vous n'avez pas installé Visual Studio, vous pouvez le télécharger à partir du site officiel de la Commission européenneSite web de Microsoft Visual Studio.
Suivez les étapes suivantes pour créer un nouveau projet appelé "DemoApp".
Ouvrez Visual Studio et cliquez sur Créer un nouveau projet
**Nouveau projet
Sélectionnez l'application console et cliquez sur Suivant
**Nouveau type de projet
Saisir le nom du projet
**Nouveau nom de projet
Sélectionnez la version .NET. Choisissez la version stable .NET 6.0.
Nouveau projet Informations complémentaires
Installer la bibliothèque IronXL
Une fois le projet créé, la bibliothèque IronXL doit être installée dans le projet pour être utilisée. Suivez les étapes suivantes pour l'installer.
Ouvrez Manage NuGet Packages for Solutions (Gérer les paquets NuGet pour les solutions) à partir de l'Explorateur de solutions ou des Outils.
NuGet Package Manager
Recherchez la bibliothèque IronXL et sélectionnez le projet en cours. Cliquez sur installer.
Recherche et installation du paquetage IronXL dans l'interface utilisateur du gestionnaire de paquets NuGet
Ajouter l'espace de noms suivant au début du fichier Program.cs
using IronXL;
using IronXL;
Imports IronXL
$vbLabelText $csharpLabel
Ouvrir un fichier Excel existant dans C# ;
IronXL permet d'ouvrir un fichier Excel existant ou de créer un nouveau fichier Excel. Cet exemple va ouvrir un fichier existant à l'aide d'IronXL 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
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")
$vbLabelText $csharpLabel
Sélectionnons maintenant sa première feuille de calcul. Vous pouvez sélectionner une feuille de calcul par son numéro d'index ou par son 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 = wb.GetWorkSheet("Sheet1");
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets [0];
// Select worksheet by name
WorkSheet ws = wb.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 = wb.GetWorkSheet("Sheet1")
' Get any existing worksheet
Dim firstSheet As WorkSheet = workBook.DefaultWorkSheet
$vbLabelText $csharpLabel
Le code ci-dessus récupère la première feuille du classeur Excel. Pour créer un nouveau fichier Excel avec des données, voir cecipage d'exemple de code.
Maintenant, écrivons des données dans le fichier Excel à l'aide de la bibliothèque d'objets IronXL.
Écriture des données dans un fichier Excel en C# ;
L'écriture de données dans un fichier Excel à l'aide d'IronXL est très facile. Il existe plusieurs façons de l'archiver, 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";
' Access A1 cell and write the value
workSheet ("A1").Value = "Value using cell reference"
$vbLabelText $csharpLabel
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.
workSheet ["B1:B5"].Value = "Range value";
workSheet ["B1:B5"].Value = "Range value";
workSheet ("B1:B5").Value = "Range value"
$vbLabelText $csharpLabel
Nous pouvons également remplir la plage avec une boucle for, ce qui la rend dynamique. Le code est le suivant :
//specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
//write the Dynamic value in one row
workSheet ["C" + i].Value = "Value: " + i;
//write the Dynamic value in another row
ws ["D" + i].Value = "Value: " + i;
}
//specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
//write the Dynamic value in one row
workSheet ["C" + i].Value = "Value: " + i;
//write the Dynamic value in another row
ws ["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 one row
workSheet ("C" & i).Value = "Value: " & i
'write the Dynamic value in another row
ws ("D" & i).Value = "Value: " & i
Next i
$vbLabelText $csharpLabel
Une autre façon d'écrire des données dans un fichier Excel consiste à utiliser la fonctionRemplacer méthode.
Cette section explique comment enregistrer le fichier Excel contenant le nouveau contenu.
workBook.SaveAs("sample.xlsx");
workBook.SaveAs("sample.xlsx");
workBook.SaveAs("sample.xlsx")
$vbLabelText $csharpLabel
Le code est le suivant :
using System;
using IronXL;
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";
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 one row
workSheet ["C" + i].Value = "Value: " + i;
//write the Dynamic value in another row
workSheet ["D" + i].Value = "Value: " + i;
}
workSheet ["D5"].Replace("Value: 5", "Replaced Value");
workBook.SaveAs("sample.xlsx");
Console.WriteLine("successfully written in Excel File");
}
using System;
using IronXL;
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";
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 one row
workSheet ["C" + i].Value = "Value: " + i;
//write the Dynamic value in another row
workSheet ["D" + i].Value = "Value: " + i;
}
workSheet ["D5"].Replace("Value: 5", "Replaced Value");
workBook.SaveAs("sample.xlsx");
Console.WriteLine("successfully written in Excel File");
}
Imports System
Imports IronXL
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"
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 one row
workSheet ("C" & i).Value = "Value: " & i
'write the Dynamic value in another row
workSheet ("D" & i).Value = "Value: " & i
Next i
workSheet ("D5").Replace("Value: 5", "Replaced Value")
workBook.SaveAs("sample.xlsx")
Console.WriteLine("successfully written in Excel File")
End Sub
$vbLabelText $csharpLabel
Pour plus d'informations sur la lecture des données d'un fichier Excel en C#, consultez le site suivantcet exemple.
Sortie
Le résultat du fichier est le suivant :
Le fichier Excel de sortie
Résumé
Cet article a montré comment écrire des données dans des fichiers Excel en C# à l'aide d'IronXL. IronXL permet de travailler avec des fichiers Excel existants sans aucun problème. Il permet également de créer de nouveaux fichiers Excel et d'y écrire des données avec 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 procéder comme suitpage d'exemple de code.
IronXL est gratuit pour le développement et peut faire l'objet d'une licence pour un usage commercial. Vous pouvez également essayer gratuitement IronXLprocès à des fins commerciales.
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
< PRÉCÉDENT Comment désactiver la vue protégée dans Excel à l'aide de C#
SUIVANT > Comment exporter des données volumineuses d'un tableau de données vers Excel en C#
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucune obligation de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre gratuit Démonstration en direct
Fiable par plus de 2 millions d'ingénieurs dans le monde entier