C&#35 ; Lire un fichier XLSX

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

Pour lire des fichiers XLSX en C#, utilisez la méthode WorkBook.Load d'IronXL pour ouvrir des fichiers Excel et accéder aux feuilles de calcul afin de lire les données des cellules, d'effectuer des calculs et de convertir aux formats DataTable ou DataSet de manière programmatique.

Démarrage rapide : chargez un classeur et accédez facilement à une feuille de calcul

Avec IronXL, vous pouvez charger un fichier XLSX à l'aide de la méthode WorkBook.Load en une seule ligne. Vous pouvez ensuite accéder instantanément à la première feuille de calcul ou à la feuille de calcul nommée et commencer à lire les valeurs des cellules.

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 workbook = IronXL.WorkBook.Load("your-file.xlsx");
  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

Lire les fichiers .XLSX en C#

  • Procurez-vous IronXL pour votre projet
  • Charger un livre de travail
  • Accéder aux données d'une Feuille de travail
  • Utilisez des fonctions comme Somme, Min et Max.
  • Lire une WorkSheet en tant que DataTable, DataSet, etc
How To Work related to C&#35 ; Lire un fichier XLSX

Comment obtenir IronXL pour mon projet?

Utilisez IronXL dans votre projet pour une manipulation simple des fichiers Excel en C#. Vous pouvez installer IronXL soit par téléchargement direct , soit en utilisant NuGet Install pour Visual Studio . Le logiciel est gratuit pour le développement.

Install-Package IronXL.Excel

Avant de plonger dans la lecture de fichiers XLSX, explorez la documentation complète d'IronXL pour comprendre toutes les fonctionnalités disponibles. IronXL prend en charge les formats .xls et .xlsx, ce qui le rend polyvalent pour les fichiers Excel anciens et modernes.


Didacticiel de prise en main

Comment charger un livre de travail?

WorkBook est la classe d'IronXL.Excel dont l'objet fournit un accès complet au fichier Excel et à toutes ses fonctions. Par exemple, pour accéder à un fichier Excel, utilisez le code :

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-load-workbook.cs
using IronXL;

// Load the workbook
WorkBook workBook = WorkBook.Load("sample.xlsx"); // Excel file path
$vbLabelText   $csharpLabel

Pourquoi utiliser la méthode WorkBook.Load()?

Dans le code ci-dessus, la fonction WorkBook.Load() charge sample.xlsx dans workBook . Tout type de fonction peut être exécuté sur workBook en accédant à la feuille de calcul spécifique d'un fichier Excel. La méthode WorkBook.Load détecte automatiquement le format du fichier, qu'il s'agisse de XLS, XLSX, XLSM, XLTX ou CSV. Pour des scénarios de chargement plus avancés, consultez le guide détaillé sur le chargement de feuilles de calcul.


Comment accéder à une feuille de travail spécifique ?

Pour accéder à une Feuille de travail spécifique d'un fichier Excel, IronXL fournit la classe Feuille de travail. Elle peut être utilisée de différentes manières :

Quelles sont les différentes façons d'accéder à une feuille de calcul ?

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-worksheet.cs
using IronXL;

// Access sheet by name
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
$vbLabelText   $csharpLabel

workBook est le WorkBook déclaré dans la partie ci-dessus.

OU

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-worksheet-index.cs
using IronXL;

// Access sheet by index
WorkSheet workSheet = workBook.WorkSheets[0];
$vbLabelText   $csharpLabel

OU

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-default-worksheet.cs
using IronXL;

// Access the default worksheet
WorkSheet workSheet = workBook.DefaultWorkSheet;
$vbLabelText   $csharpLabel

OU

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-worksheet.cs
using IronXL;
using System.Linq;

// Access the first worksheet
WorkSheet workSheet = workBook.WorkSheets.First();
$vbLabelText   $csharpLabel

OU

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-or-default-worksheet.cs
using IronXL;
using System.Linq;

// Access the first or default worksheet
WorkSheet workSheet = workBook.WorkSheets.FirstOrDefault();
$vbLabelText   $csharpLabel

Quand dois-je utiliser chaque méthode d'accès à la feuille de calcul ?

Chaque méthode a son cas d'utilisation idéal :

  • GetWorkSheet("name") : Lorsque vous connaissez le nom exact de la feuille
  • WorkSheets[index] : Pour parcourir les feuilles de manière programmatique
  • Feuille de travail par défaut : Accès rapide aux fichiers à feuille unique
  • First() ou FirstOrDefault() : Options sûres lorsque les noms de feuilles risquent de changer

Une fois workSheet Excel obtenue, vous pouvez en extraire tout type de données et effectuer toutes les fonctions Excel dessus. Pour des opérations plus complexes sur les feuilles de calcul, consultez le guide sur l'ouverture de feuilles de calcul Excel en C#.


Comment accéder aux données d'une feuille de travail ?

Les données sont accessibles depuis workSheet Excel grâce à cette procédure :

Quels types de données puis-je lire dans les cellules ?

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-data.cs
using IronXL;

// Accessing data as a string
string dataString = workSheet["A1"].ToString();

// Accessing data as an integer
int dataInt = workSheet["B1"].Int32Value;
$vbLabelText   $csharpLabel

IronXL fournit divers accesseurs de valeurs pour différents types de données :

  • StringValue : Pour les données textuelles
  • Int32Value : Pour les entiers
  • Valeur double : Pour les décimales
  • DateTimeValue : Pour les dates
  • BoolValue : Pour les valeurs vrai/faux

Comment lire plusieurs cellules à la fois ?

Vous pouvez également obtenir des données à partir de plusieurs cellules d'une colonne spécifique :

foreach (var cell in workSheet["A2:A10"])
{
    Console.WriteLine("Value is: {0}", cell.Text);
}
foreach (var cell in workSheet["A2:A10"])
{
    Console.WriteLine("Value is: {0}", cell.Text);
}
$vbLabelText   $csharpLabel

Ceci affiche les valeurs des cellules A2 à A10. Pour des techniques de sélection de plage plus avancées, visitez le tutoriel de sélection de plage.

À quoi ressemble une implémentation complète?

Un exemple de code complet des spécificités ci-dessus est fourni ici :

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-log-data.cs
using IronXL;
using System;

// Load an Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Specify the range
foreach (var cell in workSheet["B2:B10"])
{
    Console.WriteLine("Value is: {0}", cell.Text);
}
$vbLabelText   $csharpLabel

Elle affiche le résultat suivant :

Sortie de la console montrant les données extraites de la feuille de calcul avec les valeurs Gouvernement, Privé, Milieu de gamme et Partenaires de distribution

Avec le fichier Excel Sample.xlsx :

Feuille de calcul Excel contenant des données commerciales avec les colonnes Segment, Pays, Produit et Bande de rabais sur 16 lignes

Ces méthodologies montrent à quel point il est facile d'utiliser des données de fichiers Excel dans votre projet. Pour des exemples pratiques de lecture de fichiers Excel sans Interop, consultez les exemples de lecture d'Excel.


Comment puis-je exécuter des fonctions sur des données ?

Accédez aux données filtrées d'une Feuille de travail Excel en appliquant des fonctions d'agrégation telles que Sum, Min ou Max à l'aide du code suivant :

Quelles sont les fonctions d'agrégation disponibles ?

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-aggregate-function.cs
using IronXL;

// Apply aggregate functions
decimal sum = workSheet["G2:G10"].Sum(); // Sum of cells from G2 to G10
decimal min = workSheet["G2:G10"].Min(); // Minimum value in cells from G2 to G10
decimal max = workSheet["G2:G10"].Max(); // Maximum value in cells from G2 to G10
$vbLabelText   $csharpLabel

IronXL prend en charge de nombreuses fonctions mathématiques, notamment :

  • Moyenne() : Calculer la valeur moyenne
  • Count() : Compter les cellules non vides
  • CountIf() : Compter les cellules répondant à des critères
  • Médiane() : Trouver la valeur moyenne
  • StdDev() : Calculer l'écart-type

Comment mettre en œuvre plusieurs fonctions ensemble ?

Pour plus de détails, consultez notre tutoriel approfondi sur Comment Écrire des fichiers Excel en C# avec des spécificités sur les fonctions d'agrégation. Vous pouvez également explorer la liste complète des fonctions mathématiques disponibles dans IronXL.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-min-max.cs
using IronXL;
using System;

// Load the Excel workbook
WorkBook workBook = WorkBook.Load("sample.xlsx");

// Get the specified WorkSheet
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Calculate sum, minimum, and maximum for a range of cells
decimal sum = workSheet["G2:G10"].Sum();
decimal min = workSheet["G2:G10"].Min();
decimal max = workSheet["G2:G10"].Max();

// Output results
Console.WriteLine("Sum is: {0}", sum);
Console.WriteLine("Min is: {0}", min);
Console.WriteLine("Max is: {0}", max);
$vbLabelText   $csharpLabel

Ce code affiche la sortie suivante :

Terminal montrant les résultats de l'analyse des données : Somme=482, Min=12, Max=350 sur fond noir

Voici à quoi ressemble le fichier Excel Sample.xlsx :

Feuille de calcul Excel contenant des données sur les ventes indiquant les segments, les pays, les produits, les unités vendues et les prix sur plusieurs lignes

Comment lire une feuille de calcul Excel en tant que tableau de données?

En utilisant IronXL, il est facile de travailler avec une WorkSheet Excel en tant que DataTable. Cette fonctionnalité est particulièrement utile lorsque vous devez intégrer des données Excel à des chaînes de traitement de données existantes ou lier des données à des contrôles d'interface utilisateur.

Quelle est la méthode de conversion de base ?

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable.cs
using IronXL;
using System.Data;

// Convert worksheet to DataTable
DataTable dt = workSheet.ToDataTable();
$vbLabelText   $csharpLabel

Comment utiliser la première ligne comme en-tête de colonne ?

Pour utiliser la première ligne de la feuille Excel comme table de données ColumnName :

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable-header.cs
using IronXL;
using System.Data;

// Convert worksheet to DataTable with the first row as column names
DataTable dt = workSheet.ToDataTable(true);
$vbLabelText   $csharpLabel

Le paramètre booléen de ToDataTable() définit la première ligne comme nom de colonne de votre DataTable. Par défaut, sa valeur est False . Ceci est particulièrement utile lorsque l'on travaille avec des données structurées qui incluent des en-têtes.

Comment itérer à travers le DataTable?

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-print-datatable.cs
using IronXL;
using System;
using System.Data;

// Load the Excel workbook
WorkBook workBook = WorkBook.Load("sample.xlsx");

// Get the specified WorkSheet
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Convert WorkSheet to DataTable
DataTable dt = workSheet.ToDataTable(true); // Use first row as column names

// Iterate through rows and columns and display data
foreach (DataRow row in dt.Rows) // Access rows
{
    for (int i = 0; i < dt.Columns.Count; i++) // Access columns of corresponding row
    {
        Console.Write(row[i] + " ");
    }
    Console.WriteLine();
}
$vbLabelText   $csharpLabel

À l'aide du code ci-dessus, chaque valeur de cellule de la Feuille de travail peut être consultée et utilisée selon les besoins. Pour des opérations DataTable plus avancées, voir le guide sur l'importation et l'exportation en tant que DataSet.


Comment lire un fichier Excel en tant que DataSet?

IronXL fournit une fonction simple permettant d'utiliser un fichier Excel complet (WorkBook) en tant qu'ensemble de données. Utilisez la méthode ToDataSet pour transformer l'ensemble du classeur en DataSet.
Dans cet exemple, nous verrons comment utiliser le fichier Excel comme un ensemble de données.

Comment convertir un classeur en DataSet?

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-excel-to-dataset.cs
using IronXL;
using System;
using System.Data;

// Load the Excel workbook
WorkBook workBook = WorkBook.Load("sample.xlsx");

// Convert the WorkBook to a DataSet
DataSet ds = workBook.ToDataSet();

// Iterate through tables in the DataSet and display table names
foreach (DataTable dt in ds.Tables)
{
    Console.WriteLine(dt.TableName);
}
$vbLabelText   $csharpLabel

Le résultat du code ci-dessus ressemble à ceci :

Capture d'écran corrompue ou incomplète ne montrant que les étiquettes Sheet1, Sheet2, Sheet3

Et le fichier Excel Sample.xlsx ressemble à ceci :

Feuille de calcul Excel avec classeur à feuilles multiples présentant des données commerciales sur différents segments de marché et pays

Comment puis-je accéder à la valeur de chaque cellule dans toutes les feuilles de calcul ?

Dans l'exemple ci-dessus, nous pouvons facilement analyser un fichier Excel en un DataSet et travailler avec chaque WorkSheet d'un fichier Excel en tant que DataTable. Découvrez comment parser Excel en tant que DataSet en vous appuyant sur des exemples de code.

Voyons un autre exemple de la façon d'accéder à la valeur de chaque cellule de toutes les feuilles Excel. Ici, nous pouvons accéder à chaque valeur de cellule de chaque Feuille de travail d'un fichier Excel.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-all-excel-sheets.cs
// CET EXTRAIT DE CODE N'EST PAS DISPONIBLE !
$vbLabelText   $csharpLabel

Dans l'exemple ci-dessus, il est pratique d'accéder à chaque valeur de cellule de chaque Feuille de travail d'un fichier Excel. Cette approche est particulièrement utile lorsqu'il s'agit de classeurs à plusieurs feuilles où les données sont réparties sur différents onglets.

Pour en savoir plus sur la manière de Lire des fichiers Excel sans interopérabilité, consultez le code ici. La documentation de référence de l'API fournit des détails complets sur toutes les méthodes et propriétés disponibles à l'adresse Référence de l'API IronXL.


Accès rapide au tutoriel

Référence API pour IronXL

Pour en savoir plus sur les fonctionnalités, les classes, les champs de méthode, les espaces de noms et les énumérations d'IronXL, consultez la documentation.

Référence API pour IronXL
Documentation related to Accès rapide au tutoriel

Questions Fréquemment Posées

Comment lire des fichiers XLSX en C# ?

Pour lire des fichiers XLSX en C#, utilisez la méthode WorkBook.Load d'IronXL. Il suffit de charger le fichier Excel avec IronXL.WorkBook.Load("your-file.xlsx"), puis d'accéder aux feuilles de calcul pour lire les données des cellules, effectuer des calculs et convertir aux formats DataTable ou DataSet par programme.

Quels sont les formats de fichiers pris en charge lors du chargement de fichiers Excel ?

IronXL prend en charge plusieurs formats de fichiers Excel, notamment les fichiers .xls, .xlsx, .xlsm, .xltx et .csv. La méthode WorkBook.Load détecte automatiquement le format de fichier, ce qui la rend polyvalente pour les fichiers Excel anciens et modernes.

Comment puis-je installer la bibliothèque de lecture Excel pour mon projet C# ?

Vous pouvez installer IronXL soit par téléchargement direct, soit via NuGet Install for Visual Studio. Le logiciel est gratuit à des fins de développement et offre un moyen simple de travailler avec les formats de fichiers Excel en C#.

Quelles sont les différentes façons d'accéder à une feuille de calcul spécifique ?

IronXL propose plusieurs façons d'accéder aux feuilles de travail : vous pouvez utiliser workBook.GetWorkSheet("SheetName") pour accéder par nom, workBook.WorkSheets[0] pour accéder par index, ou workBook.WorkSheets.First() pour obtenir la première feuille de travail.

Puis-je effectuer des calculs sur les données Excel après les avoir chargées ?

Oui, après avoir chargé un fichier XLSX avec IronXL, vous pouvez appliquer diverses fonctions telles que Sum, Min et Max sur les données. La bibliothèque offre un accès complet aux fonctionnalités des fichiers Excel par l'intermédiaire de l'objet WorkBook.

Est-il possible de convertir les données d'une feuille de calcul Excel dans d'autres formats ?

Oui, IronXL permet de lire une feuille de calcul et de la convertir dans différents formats, notamment DataTable, DataSet, etc. Il est ainsi facile d'intégrer des données Excel dans vos applications C#.

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