Passer au contenu du pied de page
UTILISATION D'IRONXL

Meilleure façon de lire des fichiers Excel en C# | Guide pas à pas d' IronXL

La lecture de fichiers Excel en C# représente un défi courant pour les développeurs .NET . Que vous construisiez un pipeline d'importation de données, un outil de reporting ou un système de traitement par lots, il est important d'analyser correctement les données des feuilles de calcul. IronXL est une bibliothèque .NET qui gère les fichiers XLSX, XLS et CSV sans nécessiter Microsoft Office ni l'interopérabilité COM sur le serveur. Ce guide décrit l'intégralité du flux de travail, de l'installation aux requêtes avancées, afin que vous puissiez choisir l'approche la plus adaptée à votre projet.

Commencez avec IronXL maintenant.
green arrow pointer

Quelle est la meilleure façon de lire des fichiers Excel en C# ?

La meilleure solution consiste à utiliser une bibliothèque dédiée et indépendante d'Office, telle IronXL. Les méthodes traditionnelles comme Microsoft.Office.Interop.Excel fonctionnent sur les machines où Excel est installé, mais elles sont fragiles dans les environnements serveur ou conteneurisés car elles lancent un processus COM en arrière-plan. Le kit de développement logiciel OpenXML est gratuit et sans danger pour les serveurs, mais il expose un modèle XML de bas niveau qui nécessite un code répétitif important pour les tâches quotidiennes.

IronXL se situe entre ces deux extrêmes. L'API reflète la façon dont les développeurs conçoivent déjà les feuilles de calcul : les classeurs contiennent des feuilles de calcul, les feuilles de calcul contiennent des cellules et les cellules contiennent des valeurs saisies. La bibliothèque gère en interne la détection du format, l'évaluation des formules et l'encodage, ce qui vous permet de consacrer votre temps à la logique métier plutôt qu'à l'analyse des détails.

Comparaison des approches de lecture Excel en C#
Approche Nécessite Office ? Serveur sécurisé ? Simplicité de l'API Prise en charge des formats
Interopérabilité COM Oui Non Faible XLSX, XLS
OpenXML SDK Non Oui Faible XLSX uniquement
IronXL Non Oui Haut XLSX, XLS, CSV

La documentation de lecture d' IronXL pour Excel couvre l'intégralité de l'API. Pour l'instant, les sections ci-dessous présentent les modèles de base que vous utiliserez dans chaque projet.

Comment installer IronXL dans un projet .NET ?

L'installation prend moins d'une minute avec le gestionnaire de packages NuGet . Ouvrez un terminal dans le répertoire de votre projet et exécutez :

dotnet add package IronXl.Excel
dotnet add package IronXl.Excel
SHELL

Vous pouvez également utiliser la console du gestionnaire de packages de Visual Studio :

Install-Package IronXl.Excel
Install-Package IronXl.Excel
SHELL

Après l'installation, ajoutez la directive using IronXL; à tout fichier nécessitant un accès à la feuille de calcul. Cette bibliothèque est compatible avec .NET 10, .NET 8, .NET 6, .NET Framework 4.6.2 et .NET Standard 2.0 ; elle s'intègre donc aux projets existants sans nécessiter de mise à niveau du runtime. Consultez le guide d'installation IronXL pour obtenir des informations spécifiques à chaque plateforme et des détails sur le package NuGet .

Aucun composant d'exécution supplémentaire, aucune entrée de registre ni aucune licence Office n'est requis. Le package NuGet contient tout ce dont la bibliothèque a besoin.

Vérification de l'installation

Après avoir ajouté le package, compilez le projet une fois pour confirmer que la référence est correctement résolue. Si vous voyez une erreur CS0246 pour les types IronXL, vérifiez que la directive using IronXL; est présente et que le framework cible dans votre .csproj est l'une des versions prises en charge. La matrice de compatibilité IronXL répertorie toutes les cibles d'exécution confirmées.

Comment charger et lire un classeur Excel ?

Le chargement d'un classeur nécessite un seul appel de méthode. WorkBook.Load accepte un chemin de fichier et renvoie un objet WorkBook qui représente l'intégralité du fichier en mémoire.

using IronXL;

// Load any supported format -- XLSX, XLS, or CSV
WorkBook workbook = WorkBook.Load("financial_report.xlsx");

// Access the first worksheet by position
WorkSheet worksheet = workbook.WorkSheets[0];

// Or retrieve a named worksheet
WorkSheet expenses = workbook.GetWorkSheet("Expenses");

Console.WriteLine($"Sheets loaded: {workbook.WorkSheets.Count}");
Console.WriteLine($"Default sheet rows: {worksheet.RowCount}");
using IronXL;

// Load any supported format -- XLSX, XLS, or CSV
WorkBook workbook = WorkBook.Load("financial_report.xlsx");

// Access the first worksheet by position
WorkSheet worksheet = workbook.WorkSheets[0];

// Or retrieve a named worksheet
WorkSheet expenses = workbook.GetWorkSheet("Expenses");

Console.WriteLine($"Sheets loaded: {workbook.WorkSheets.Count}");
Console.WriteLine($"Default sheet rows: {worksheet.RowCount}");
$vbLabelText   $csharpLabel

Meilleure façon de lire un fichier Excel en C# avec IronXL: Image 1 - Sortie console pour confirmation du classeur chargé

L'objet WorkBook permet d'accéder à toutes les données de la feuille de calcul. Chaque instance WorkSheet correspond à un onglet du fichier. L'accès par index (WorkSheets[0]) est fiable pour les fichiers à feuille unique ; L'accès par nom est plus sûr lorsque le fichier contient plusieurs onglets dont les noms sont connus.

IronXL évalue automatiquement les formules lors de la lecture d'une cellule. Si la cellule B10 contient =SUM(B2:B9), la lecture de sheet["B10"].DecimalValue renvoie le total calculé, et non la chaîne de formule. Pour plus de détails sur les options de chargement de classeurs, consultez le guide pratique de chargement de feuilles de calcul .

Travailler avec plusieurs feuilles de calcul

Lorsqu'un classeur contient plusieurs onglets, vous pouvez les énumérer en utilisant workbook.WorkSheets et traiter chacun d'eux à son tour. Ceci est utile pour les fichiers qui répartissent les données par mois, département ou région sur des onglets distincts. La propriété WorkSheet.Name vous donne l'étiquette de l'onglet sous forme de chaîne, que vous pouvez utiliser pour le traitement conditionnel ou la journalisation.

Comment lire les valeurs des cellules d'une feuille de calcul ?

IronXL fournit des propriétés fortement typées sur chaque cellule, ce qui vous permet de lire directement les valeurs dans le type .NET approprié sans analyse manuelle.

using IronXL;

WorkBook workbook = WorkBook.Load("Products.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;

// Address-based access with typed properties
string productName = sheet["A2"].StringValue;
int quantity       = sheet["B2"].IntValue;
decimal price      = sheet["C2"].DecimalValue;
bool inStock       = sheet["D2"].BoolValue;

// Check for empty cells before processing
var statusCell = sheet["E2"];
if (statusCell.Value != null && statusCell.StringValue.Length > 0)
{
    Console.WriteLine($"Status: {statusCell.StringValue}");
}

// Row/column index access (zero-based)
var firstDataCell = sheet.Rows[1].Columns[0];
Console.WriteLine($"Product: {productName}, Qty: {quantity}, Price: {price:C}");
using IronXL;

WorkBook workbook = WorkBook.Load("Products.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;

// Address-based access with typed properties
string productName = sheet["A2"].StringValue;
int quantity       = sheet["B2"].IntValue;
decimal price      = sheet["C2"].DecimalValue;
bool inStock       = sheet["D2"].BoolValue;

// Check for empty cells before processing
var statusCell = sheet["E2"];
if (statusCell.Value != null && statusCell.StringValue.Length > 0)
{
    Console.WriteLine($"Status: {statusCell.StringValue}");
}

// Row/column index access (zero-based)
var firstDataCell = sheet.Rows[1].Columns[0];
Console.WriteLine($"Product: {productName}, Qty: {quantity}, Price: {price:C}");
$vbLabelText   $csharpLabel

Meilleure façon de lire un fichier Excel en C# avec IronXL: Image 2 - Sortie de lecture Excel simple avec IronXL

La syntaxe sheet["A2"] utilise la notation Excel standard. Les lettres des colonnes ne sont pas sensibles à la casse et les numéros de ligne commencent à 1, comme dans Excel. La documentation de lecture des valeurs de cellule présente des accesseurs typés supplémentaires, notamment DateTimeValue pour les cellules formatées comme des dates.

Lorsqu'une cellule contient un nombre stocké sous forme de texte (un problème courant de qualité des données dans les feuilles de calcul exportées), StringValue renvoie le texte tel quel tandis que DecimalValue tente une analyse et renvoie 0 en cas d'échec. Toujours valider les données inattendues avant de les traiter comme une valeur typée dans le code de production.

Gestion des cellules de date et booléennes

Dans Excel, les cellules de date sont stockées en interne sous forme de numéros de série. IronXL expose DateTimeValue pour les convertir en un objet .NET DateTime sans calcul manuel. Pour les cellules contenant TRUE ou FALSE, BoolValue renvoie le booléen correct sans comparaison de chaîne. Ces accesseurs typés éliminent une catégorie de bogues de type de données qui apparaissent fréquemment lors de la lecture de feuilles de calcul à l'aide d'analyseurs syntaxiques génériques basés sur du texte.

Comment parcourir les lignes et les cellules ?

Pour parcourir un ensemble de données, il faut une plage ou une collection de lignes. IronXL prend en charge les deux approches, et vous pouvez les combiner pour qu'elles correspondent à la forme des données.

using IronXL;

WorkBook workbook = WorkBook.Load("financial_report.xlsx");
WorkSheet sheet = workbook.WorkSheets[0];

// Iterate a cell range -- skips header row
foreach (var cell in sheet["A2:D100"])
{
    Console.WriteLine($"{cell.AddressString}: {cell.Text}");
}

// Row-by-row with column access
for (int rowIndex = 1; rowIndex < sheet.RowCount; rowIndex++)
{
    var row = sheet.Rows[rowIndex];
    var values = new System.Text.StringBuilder();

    foreach (var cell in row)
    {
        if (cell.Value != null)
            values.Append($"{cell.StringValue}\t");
    }

    Console.WriteLine(values.ToString().TrimEnd());
}
using IronXL;

WorkBook workbook = WorkBook.Load("financial_report.xlsx");
WorkSheet sheet = workbook.WorkSheets[0];

// Iterate a cell range -- skips header row
foreach (var cell in sheet["A2:D100"])
{
    Console.WriteLine($"{cell.AddressString}: {cell.Text}");
}

// Row-by-row with column access
for (int rowIndex = 1; rowIndex < sheet.RowCount; rowIndex++)
{
    var row = sheet.Rows[rowIndex];
    var values = new System.Text.StringBuilder();

    foreach (var cell in row)
    {
        if (cell.Value != null)
            values.Append($"{cell.StringValue}\t");
    }

    Console.WriteLine(values.ToString().TrimEnd());
}
$vbLabelText   $csharpLabel

Meilleure façon de lire un fichier Excel en C# avec IronXL: Image 3 - Sortie pour l'itération sur les lignes

La chaîne de plage "A2:D100" crée une collection de cellules plates. Les lignes de la plage sont traitées de haut en bas et de gauche à droite. Ce modèle fonctionne bien pour exporter vers un List<t>, un DataTable ou une base de données.

La propriété sheet.RowCount reflète la dernière ligne utilisée dans la feuille de calcul, la boucle se termine donc automatiquement lorsque les données se terminent. Le guide sur l'itération dans Excel couvre des modèles d'itération supplémentaires, notamment le parcours colonne par colonne.

Ignorer les lignes d'en-tête

La plupart des feuilles de calcul comportent une ligne d'en-tête qui décrit les noms des colonnes plutôt que de contenir des données. Commencez l'itération de plage à la ligne 2 (par exemple, "A2:D100") ou commencez la boucle d'index à rowIndex = 1 pour ignorer l'en-tête. Si vous utilisez ToDataTable(true), IronXL gère automatiquement la détection des en-têtes et mappe les noms de colonnes à partir de la première ligne.

Comment gérer plusieurs formats Excel ?

IronXL détecte automatiquement le format de fichier à partir de son extension et de son en-tête. L'API est identique pour les fichiers XLSX, XLS et CSV, ce qui signifie que le même code d'analyse fonctionne pour les trois formats sans logique conditionnelle.

using IronXL;

// Load different formats with identical API
WorkBook xlsxBook = WorkBook.Load("Modern.xlsx");
WorkBook xlsBook  = WorkBook.Load("Legacy.xls");
WorkBook csvBook  = WorkBook.Load("Export.csv");

// Access worksheets identically across formats
WorkSheet sheet1 = xlsxBook.DefaultWorkSheet;
WorkSheet sheet2 = xlsBook.DefaultWorkSheet;
WorkSheet sheet3 = csvBook.DefaultWorkSheet;

// Cross-format conversion -- save XLSX as CSV, or CSV as XLSX
xlsxBook.SaveAs("converted_output.csv");
csvBook.SaveAs("structured_output.xlsx");

Console.WriteLine($"XLSX rows: {sheet1.RowCount}");
Console.WriteLine($"XLS rows:  {sheet2.RowCount}");
Console.WriteLine($"CSV rows:  {sheet3.RowCount}");
using IronXL;

// Load different formats with identical API
WorkBook xlsxBook = WorkBook.Load("Modern.xlsx");
WorkBook xlsBook  = WorkBook.Load("Legacy.xls");
WorkBook csvBook  = WorkBook.Load("Export.csv");

// Access worksheets identically across formats
WorkSheet sheet1 = xlsxBook.DefaultWorkSheet;
WorkSheet sheet2 = xlsBook.DefaultWorkSheet;
WorkSheet sheet3 = csvBook.DefaultWorkSheet;

// Cross-format conversion -- save XLSX as CSV, or CSV as XLSX
xlsxBook.SaveAs("converted_output.csv");
csvBook.SaveAs("structured_output.xlsx");

Console.WriteLine($"XLSX rows: {sheet1.RowCount}");
Console.WriteLine($"XLS rows:  {sheet2.RowCount}");
Console.WriteLine($"CSV rows:  {sheet3.RowCount}");
$vbLabelText   $csharpLabel

Pour les fichiers CSV, IronXL respecte les conventions RFC 4180, notamment les champs entre guillemets contenant des virgules, les sauts de ligne à l'intérieur des valeurs entre guillemets et les guillemets doubles échappés. Le guide de conversion CSV vers XLSX couvre la personnalisation des délimiteurs pour les exportations CSV non standard.

Lorsque votre application doit accepter des fichiers provenant de systèmes externes, il est recommandé d'inspecter l'extension du fichier et de valider son contenu avant le chargement. IronXL génère une exception descriptive si le fichier est corrompu ou dans un format non pris en charge, que vous pouvez intercepter et afficher à l'utilisateur.

Comment exécuter des requêtes avancées sur des données Excel ?

Au-delà de la lecture cellule par cellule, IronXL expose des fonctions d'agrégation et une compatibilité LINQ qui transforment une plage de feuilles de calcul en une collection interrogeable.

using IronXL;
using System.Linq;

WorkBook workbook = WorkBook.Load("Financials.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;

// Built-in aggregates -- no manual looping needed
decimal totalSales = sheet["B2:B50"].Sum();
decimal maxRevenue = sheet["C2:C50"].Max(c => c.DecimalValue);
decimal avgMargin  = sheet["D2:D50"].Avg();

// LINQ filtering directly on a range
var highValueRows = sheet["C2:C50"]
    .Where(c => c.DecimalValue > 1000)
    .Select(c => new { c.AddressString, c.DecimalValue });

foreach (var row in highValueRows)
    Console.WriteLine($"Haut value at {row.AddressString}: {row.DecimalValue:C}");

// Write a calculated result back to the sheet
sheet["E2"].Value = totalSales;
workbook.SaveAs("Financials_Updated.xlsx");

Console.WriteLine($"Total: {totalSales:C}, Max: {maxRevenue:C}, Avg: {avgMargin:C}");
using IronXL;
using System.Linq;

WorkBook workbook = WorkBook.Load("Financials.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;

// Built-in aggregates -- no manual looping needed
decimal totalSales = sheet["B2:B50"].Sum();
decimal maxRevenue = sheet["C2:C50"].Max(c => c.DecimalValue);
decimal avgMargin  = sheet["D2:D50"].Avg();

// LINQ filtering directly on a range
var highValueRows = sheet["C2:C50"]
    .Where(c => c.DecimalValue > 1000)
    .Select(c => new { c.AddressString, c.DecimalValue });

foreach (var row in highValueRows)
    Console.WriteLine($"Haut value at {row.AddressString}: {row.DecimalValue:C}");

// Write a calculated result back to the sheet
sheet["E2"].Value = totalSales;
workbook.SaveAs("Financials_Updated.xlsx");

Console.WriteLine($"Total: {totalSales:C}, Max: {maxRevenue:C}, Avg: {avgMargin:C}");
$vbLabelText   $csharpLabel

Meilleure façon de lire un fichier Excel en C# avec IronXL: Image 4 - Sortie de la console des opérations de lecture avancées

La compatibilité LINQ est utile lorsque vous devez filtrer des lignes avant de les importer dans une base de données ou vérifier que toutes les valeurs d'une colonne respectent un seuil. La bibliothèque évalue les formules avant l'exécution de LINQ, de sorte que les requêtes d'agrégation opèrent toujours sur les valeurs calculées finales plutôt que sur les chaînes de formules.

Le tutoriel LINQ avec IronXL couvre la fusion de feuilles de calcul, le regroupement par colonne et la projection des résultats dans des objets fortement typés — des modèles qui éliminent une grande partie du code répétitif dans le pipeline de données.

Comment exporter des données Excel vers un DataTable ?

De nombreuses applications .NET chargent des données de feuille de calcul dans un ADO.NET DataTable pour un traitement ultérieur ou une insertion dans une base de données. IronXL propose une méthode de conversion directe qui élimine le besoin de mappage manuel des colonnes.

using IronXL;
using System.Data;

WorkBook workbook = WorkBook.Load("SalesData.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;

// Convert worksheet to DataTable -- first row becomes column headers
DataTable dataTable = sheet.ToDataTable(true);

Console.WriteLine($"Columns: {dataTable.Columns.Count}");
Console.WriteLine($"Rows:    {dataTable.Rows.Count}");

// Iterate the DataTable normally
foreach (DataRow row in dataTable.Rows)
{
    Console.WriteLine($"{row["ProductName"]} -- {row["Quantity"]} -- {row["Price"]}");
}
using IronXL;
using System.Data;

WorkBook workbook = WorkBook.Load("SalesData.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;

// Convert worksheet to DataTable -- first row becomes column headers
DataTable dataTable = sheet.ToDataTable(true);

Console.WriteLine($"Columns: {dataTable.Columns.Count}");
Console.WriteLine($"Rows:    {dataTable.Rows.Count}");

// Iterate the DataTable normally
foreach (DataRow row in dataTable.Rows)
{
    Console.WriteLine($"{row["ProductName"]} -- {row["Quantity"]} -- {row["Price"]}");
}
$vbLabelText   $csharpLabel

Le passage de true à ToDataTable traite la première ligne de la feuille de calcul comme en-têtes de colonne. Le résultat DataTable utilise des noms de colonnes de type chaîne qui correspondent au texte d'en-tête, rendant ainsi les requêtes LINQ-to-DataSet suivantes lisibles. La documentation d'exportation de DataTable couvre la gestion des valeurs nulles et les options d'inférence de type.

Ce modèle est particulièrement utile lorsque le code en aval s'attend déjà à un DataTable -- par exemple, lors de l'appel à SqlBulkCopy pour insérer des lignes dans SQL Server. Vous pouvez charger le fichier XLSX, le convertir en DataTable et insérer en masse sans écrire de code répétitif de mappage de colonnes.

Référence de l'API de lecture des noyaux IronXL
Opération API Retours
Charger le fichier `WorkBook.Load(path)` `WorkBook`
Obtenir la feuille de calcul par index `workbook.WorkSheets[0]` `WorkSheet`
Obtenir la feuille de travail par nom `workbook.GetWorkSheet("name")` `WorkSheet`
Lire la cellule de chaîne `sheet["A1"].StringValue` `chaîne`
Lire la cellule décimale `sheet["B1"].DecimalValue` `decimal`
Itérer sur la plage `foreach cell in sheet["A2:D100"]` `IEnumerable`
Somme d'une plage `sheet["B2:B50"].Sum()` `decimal`
Exporter vers DataTable `sheet.ToDataTable(true)` `DataTable`

Pour une liste complète des API, consultez la référence des API IronXL . La documentation de référence couvre chaque propriété et méthode avec des descriptions de paramètres et des détails sur le type de retour.

Quelles sont vos prochaines étapes ?

La lecture de fichiers Excel en C# est simple une fois que vous disposez de la bibliothèque appropriée. IronXL supprime la dépendance à Office, simplifie l'interface API et gère les formats XLSX, XLS et CSV avec le même chemin de code. Les modèles abordés ici -- chargement d'un classeur, lecture des valeurs de cellules saisies, itération sur des plages, exécution d'agrégats et exportation vers un DataTable -- couvrent la majorité des besoins réels de lecture de feuilles de calcul.

Pour continuer à développer ces modèles :

  • Consultez la documentation de démarrage IronXL pour obtenir des conseils sur la configuration du projet et les exigences d'exécution.
  • Consultez les guides pratiques pour la rédaction, la mise en forme et la génération de graphiques.
  • Consultez le guide de prise en charge des formules Excel pour comprendre quelles fonctions Excel IronXL évalue automatiquement.
  • Consultez la page de licences IronXL pour connaître les options de déploiement en production.
  • Consultez le blog IronXL pour des exemples concrets couvrant la validation des données, l'exportation de tableaux croisés dynamiques et la gestion des fichiers protégés par mot de passe.

Pour les équipes évaluant IronXL par rapport à d'autres bibliothèques, la comparaison IronXL vs EPPlus et la comparaison IronXL vs NPOI couvrent les points de référence en matière de performances et les différences d'API. Les deux comparaisons incluent des exemples de code pour des opérations équivalentes dans chaque bibliothèque.

La spécification du format de fichier Excel de Microsoft est une référence utile si vous rencontrez des structures de feuilles de calcul inhabituelles provenant de systèmes anciens. La norme ECMA-376 définit le format OOXML que suivent les fichiers XLSX.

Commencez par une licence d'essai gratuite IronXL pour tester l'API complète dans votre propre projet avant de vous engager sur une licence de production.

Questions Fréquemment Posées

Quelle est la meilleure façon de lire des fichiers Excel en C# ?

La meilleure façon de lire des fichiers Excel en C# est d'utiliser une bibliothèque dédiée et indépendante d'Office telle IronXL. Elle prend en charge les formats XLSX, XLS et CSV sans nécessiter Microsoft Excel ni COM Interop, ce qui la rend compatible avec les environnements serveur et conteneurisés.

Avez-vous besoin de Microsoft Office pour utiliser IronXL?

Non. IronXL est une bibliothèque .NET autonome distribuée sous forme de package NuGet . Elle ne nécessite ni Microsoft Office, ni Excel, ni aucun composant COM sur la machine.

Quels sont les formats de fichiers Excel pris en charge par IronXL ?

IronXL lit et écrit les fichiers XLSX, XLS et CSV. La détection du format est automatique et se base sur l'extension du fichier et l'en-tête de son contenu.

Comment installer IronXL dans un projet .NET ?

Exécutez « dotnet add package IronXl.Excel » dans le terminal ou «Install-Package IronXl.Excel » dans la console du gestionnaire de packages de Visual Studio.

IronXL peut-il exporter des données Excel vers un DataTable ?

Oui. La méthode WorkSheet.ToDataTable(true) convertit n'importe quelle feuille de calcul en un DataTable .NET , la première ligne étant utilisée comme en-têtes de colonnes lorsque la valeur true est passée.

IronXL prend-il en charge les requêtes LINQ sur les données Excel ?

Oui. Les plages de cellules IronXL implémentent IEnumerable, vous pouvez donc utiliser directement les méthodes LINQ telles que Where, Select, Sum, Max et Avg sur les plages de la feuille de calcul.

Comment IronXL gère-t-il les formules Excel ?

IronXL évalue automatiquement les formules lors de la lecture de la valeur d'une cellule. La lecture de sheet["B10".DecimalValue dans une cellule contenant une formule renvoie le résultat calculé, et non la formule elle-même.

Quelles versions de .NET IronXL prend-il en charge ?

IronXL prend en charge .NET 10, .NET 8, .NET 6, .NET Framework 4.6.2 et .NET Standard 2.0.

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

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me