Comment créer et lire des fichiers Excel en VB.NET

VB .NET : Lire et créer des fichiers Excel (Tutoriel avec exemple de code)

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

Les développeurs ont besoin d'une méthode simple et fluide pour accéder aux fichiers Excel VB .NET. Dans ce tutoriel, nous utiliserons IronXL pour lire des fichiers Excel VB dotnet et accéder à toutes les données nécessaires à notre projet. Nous apprendrons à créer des feuilles de calcul dans tous les formats ( .xls , .xlsx , .csv et .tsv ), ainsi qu'à définir des styles de cellules et à insérer des données à l'aide de la programmation Excel VB.NET.


Étape 1

1. Bibliothèque Excel pour VB.NET

Obtenez la bibliothèque IronXL Excel pour VB.NET en utilisant le téléchargement DLL ou NuGet . IronXL est notre première étape pour accéder rapidement aux données Excel dans nos projets VB.NET, et c'est ce que nous utiliserons pour ce tutoriel (gratuit pour le développement).

Install-Package IronXL.Excel

Tutoriel pratique

2. Créer des fichiers Excel en VB.NET

IronXL offre l'approche la plus simple pour créer un fichier Excel (format .xlsx ) dans un projet VB.NET. Ensuite, nous pouvons insérer des données et définir les propriétés des cellules, comme les styles de police ou les bordures.

2.1. Créer un fichier Excel

Commençons par créer un classeur :

' Create a new Excel workbook with the default format (.xlsx)
Dim wb As New WorkBook
' Create a new Excel workbook with the default format (.xlsx)
Dim wb As New WorkBook
VB .NET

Le code ci-dessus sert à créer un nouveau fichier Excel. Par défaut, son extension est .xlsx .

2.2. Créer un fichier XLS

Si vous souhaitez créer un fichier avec l'extension .xls , vous pouvez utiliser ce code :

' Create a new Excel workbook with .xls format
Dim wb As New WorkBook(ExcelFileFormat.XLS)
' Create a new Excel workbook with .xls format
Dim wb As New WorkBook(ExcelFileFormat.XLS)
VB .NET

2.3. Créer une feuille de travail

Après avoir créé le classeur, une feuille de calcul Excel peut être créée comme suit :

' Create a new worksheet named "Sheet1" in the workbook
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
' Create a new worksheet named "Sheet1" in the workbook
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
VB .NET

Le code ci-dessus créera une nouvelle feuille de calcul ws1 nommée Sheet1 dans le classeur wb .

2.4. Créer plusieurs feuilles de calcul

On peut créer autant de feuilles de calcul que nécessaire de la même manière :

' Create additional worksheets
Dim ws2 As WorkSheet = wb.CreateWorkSheet("Sheet2")
Dim ws3 As WorkSheet = wb.CreateWorkSheet("Sheet3")
' Create additional worksheets
Dim ws2 As WorkSheet = wb.CreateWorkSheet("Sheet2")
Dim ws3 As WorkSheet = wb.CreateWorkSheet("Sheet3")
VB .NET

3. Insérer les données dans la feuille de calcul

3.1. Insérer des données dans les cellules

Nous pouvons maintenant facilement insérer des données dans les cellules de la feuille de calcul comme suit :

' Insert a value into a specific cell
worksheet("CellAddress").Value = "MyValue"
' Insert a value into a specific cell
worksheet("CellAddress").Value = "MyValue"
VB .NET

Par exemple, les données de la feuille de calcul ws1 peuvent être insérées comme suit :

' Insert "Hello World" into cell A1 of the worksheet
ws1("A1").Value = "Hello World"
' Insert "Hello World" into cell A1 of the worksheet
ws1("A1").Value = "Hello World"
VB .NET

Le code ci-dessus écrira Hello World dans la cellule A1 de la feuille de calcul ws1 .

3.2. Insérer des données dans la plage

Il est également possible d'écrire des données dans plusieurs cellules à l'aide de la fonction range, comme suit :

' Insert "NewValue" into the range from cell A3 to A8
ws1("A3:A8").Value = "NewValue"
' Insert "NewValue" into the range from cell A3 to A8
ws1("A3:A8").Value = "NewValue"
VB .NET

3.3. Exemple de création et de modification de feuilles de calcul

Nous allons créer un nouveau fichier Excel Sample.xlsx et y insérer des données afin d'illustrer le code que nous avons appris précédemment.

' Import IronXL namespace for Excel operations
Imports IronXL

' Main subroutine to create and edit Excel
Sub Main()
    ' Create a new workbook in XLSX format
    Dim wb As New WorkBook(ExcelFileFormat.XLSX)
    ' Create a worksheet named "Sheet1"
    Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
    ' Insert data into cells
    ws1("A1").Value = "Hello"
    ws1("A2").Value = "World"
    ' Insert a range of values
    ws1("B1:B8").Value = "RangeValue"
    ' Save the workbook as "Sample.xlsx"
    wb.SaveAs("Sample.xlsx")
End Sub
' Import IronXL namespace for Excel operations
Imports IronXL

' Main subroutine to create and edit Excel
Sub Main()
    ' Create a new workbook in XLSX format
    Dim wb As New WorkBook(ExcelFileFormat.XLSX)
    ' Create a worksheet named "Sheet1"
    Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
    ' Insert data into cells
    ws1("A1").Value = "Hello"
    ws1("A2").Value = "World"
    ' Insert a range of values
    ws1("B1:B8").Value = "RangeValue"
    ' Save the workbook as "Sample.xlsx"
    wb.SaveAs("Sample.xlsx")
End Sub
VB .NET

Remarque : par défaut, le nouveau fichier Excel sera créé dans le dossier bin\Debug du projet. Si nous souhaitons créer un nouveau fichier dans un chemin personnalisé, utilisez :

wb.SaveAs(@"E:\IronXL\Sample.xlsx")
wb.SaveAs(@"E:\IronXL\Sample.xlsx")
VB .NET

Voici une capture d'écran de notre nouveau fichier Excel Sample.xlsx :

Doc5 1 related to 3.3. Exemple de création et de modification de feuilles de calcul

Il est clair à quel point il peut être simple de créer des fichiers Excel à l'aide d' IronXL dans une application VB.NET.


4. Lire un fichier Excel en VB.NET

IronXL propose également une approche simple pour lire les fichiers Excel ( .xlsx ) dans votre projet VB .NET. Pour cela, il vous suffit de récupérer le document Excel, de le charger dans votre projet, de lire ses données et de les utiliser selon vos besoins.

Suivez ces étapes :

4.1. Accéder au fichier Excel du projet

WorkBook est la classe d'IronXL dont l'objet offre un accès complet au fichier Excel et à ses fonctions. Par exemple, si nous voulons accéder au fichier Excel, il nous suffit d'utiliser :

' Load the Excel file "sample.xlsx" into a workbook
Dim wb As WorkBook = WorkBook.Load("sample.xlsx") 'Excel file path
' Load the Excel file "sample.xlsx" into a workbook
Dim wb As WorkBook = WorkBook.Load("sample.xlsx") 'Excel file path
VB .NET

Dans le code ci-dessus, la fonction WorkBook.Load() charge sample.xlsx dans wb . Toute fonction peut être exécutée sur wb en accédant à des feuilles de calcul spécifiques du fichier Excel.

4.2. Accéder à une feuille de calcul spécifique

Pour accéder à une feuille spécifique dans Excel, utilisez la classe WorkSheet , qui peut être utilisée de différentes manières :

Par nom de feuille

' Access worksheet by name
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1") 'by sheet name
' Access worksheet by name
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1") 'by sheet name
VB .NET

Index par feuille

' Access worksheet by index
Dim ws As WorkSheet = wb.WorkSheets(0) 'by sheet index
' Access worksheet by index
Dim ws As WorkSheet = wb.WorkSheets(0) 'by sheet index
VB .NET

Feuille par défaut

' Access the default worksheet
Dim ws As WorkSheet = wb.DefaultWorkSheet() 'for the default sheet
' Access the default worksheet
Dim ws As WorkSheet = wb.DefaultWorkSheet() 'for the default sheet
VB .NET

Première feuille

' Access the first worksheet in the workbook
Dim sheet As WorkSheet = wb.WorkSheets.FirstOrDefault() 'for the first sheet
' Access the first worksheet in the workbook
Dim sheet As WorkSheet = wb.WorkSheets.FirstOrDefault() 'for the first sheet
VB .NET

Une fois le fichier Excel ws obtenu, vous pouvez extraire tout type de données de la feuille de calcul correspondante du fichier Excel et effectuer toutes les fonctions Excel.


5. Accéder aux données de la feuille de calcul

Les données sont accessibles depuis la ws Excel de cette manière :

' Retrieve values from specific cells
Dim int_Value As Integer = ws("A2").IntValue 'for integer
Dim str_value As String = ws("A2").ToString() 'for string
' Retrieve values from specific cells
Dim int_Value As Integer = ws("A2").IntValue 'for integer
Dim str_value As String = ws("A2").ToString() 'for string
VB .NET

5.1. Données provenant d'une colonne spécifique

Il est également possible d'obtenir des données à partir de plusieurs cellules d'une colonne spécifique de la manière suivante :

' Loop through cells in a specific range and print their values
For Each cell In ws("A2:A10")
    Console.WriteLine("value is: {0}", cell.Text)
Next cell
' Loop through cells in a specific range and print their values
For Each cell In ws("A2:A10")
    Console.WriteLine("value is: {0}", cell.Text)
Next cell
VB .NET

Il affichera les valeurs des cellules A2 à A10 . Un exemple de code illustrant la discussion ci-dessus est donné ci-dessous.

' Example: Load and display values from a column
Imports IronXL

Sub Main()
    ' Load the workbook from file
    Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
    ' Get the first worksheet
    Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()
    ' Loop through cells in range A2:A10
    For Each cell In ws("A2:A10")
        Console.WriteLine("value is: {0}", cell.Text)
    Next
    Console.ReadKey()
End Sub
' Example: Load and display values from a column
Imports IronXL

Sub Main()
    ' Load the workbook from file
    Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
    ' Get the first worksheet
    Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()
    ' Loop through cells in range A2:A10
    For Each cell In ws("A2:A10")
        Console.WriteLine("value is: {0}", cell.Text)
    Next
    Console.ReadKey()
End Sub
VB .NET

Le résultat suivant s'affichera :

Doc3 Input1 related to 5.1. Données provenant d'une colonne spécifique

Et nous pouvons voir une capture d'écran du fichier Excel Sample.xlsx :

Doc3 1 related to 5.1. Données provenant d'une colonne spécifique

6. Effectuer des opérations sur les données

Il est simple d'accéder aux données filtrées d'une feuille de calcul Excel en appliquant des fonctions d'agrégation telles que Somme, Min ou Max de la manière suivante :

' Aggregate functions on a range of data
Dim sum As Decimal = ws("From:To").Sum()
Dim min As Decimal = ws("From:To").Min()
Dim max As Decimal = ws("From:To").Max()
' Aggregate functions on a range of data
Dim sum As Decimal = ws("From:To").Sum()
Dim min As Decimal = ws("From:To").Min()
Dim max As Decimal = ws("From:To").Max()
VB .NET

Vous pouvez en savoir plus sur les fonctions d'agrégation Excel ici.

' Example: Apply functions to data
Imports IronXL

Sub Main()
    ' Load the workbook
    Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
    ' Get the first worksheet
    Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()

    ' Perform aggregate calculations
    Dim sum As Decimal = ws("G2:G10").Sum()
    Dim min As Decimal = ws("G2:G10").Min()
    Dim max As Decimal = ws("G2:G10").Max()

    ' Print the results
    Console.WriteLine("Sum is: {0}", sum)
    Console.WriteLine("Min is: {0}", min)
    Console.WriteLine("Max is: {0}", max)
    Console.ReadKey()
End Sub
' Example: Apply functions to data
Imports IronXL

Sub Main()
    ' Load the workbook
    Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
    ' Get the first worksheet
    Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()

    ' Perform aggregate calculations
    Dim sum As Decimal = ws("G2:G10").Sum()
    Dim min As Decimal = ws("G2:G10").Min()
    Dim max As Decimal = ws("G2:G10").Max()

    ' Print the results
    Console.WriteLine("Sum is: {0}", sum)
    Console.WriteLine("Min is: {0}", min)
    Console.WriteLine("Max is: {0}", max)
    Console.ReadKey()
End Sub
VB .NET

Ce code nous donnera cet affichage :

Doc3 Output2 related to 6. Effectuer des opérations sur les données

Ajouter un exemple de commentaire

Doc3 2 related to Ajouter un exemple de commentaire

Vous trouverez plus d'informations sur la lecture des fichiers Excel dans l'article lié.


Accès rapide au tutoriel

Documentation API de référence

Accédez à la documentation de référence de l'API IronXL et découvrez comment utiliser Excel facilement dans vos projets VB.NET. Vous y trouverez des listes de fonctionnalités, de fonctions, de classes et bien plus encore.

Documentation API de référence
Documentation related to Accès rapide au tutoriel

Questions Fréquemment Posées

Comment puis-je lire des fichiers Excel en VB.NET sans utiliser Interop ?

Pour lire des fichiers Excel en VB.NET sans utiliser Interop, vous pouvez utiliser la méthode WorkBook.Load d'IronXL pour charger le fichier. Une fois chargé, vous pouvez accéder aux données de feuilles de calcul spécifiques à l'aide de la classe WorkSheet.

Quelles sont les étapes pour créer un fichier Excel en VB.NET ?

En VB.NET, pour créer un fichier Excel avec IronXL, commencez par instancier un nouvel objet WorkBook. Utilisez la méthode CreateWorkSheet pour ajouter des feuilles et les remplir de données en définissant les valeurs des cellules.

Est-il possible de travailler avec différents formats de fichiers Excel en VB.NET ?

Oui, en travaillant avec IronXL en VB.NET, vous pouvez créer et manipuler des fichiers Excel dans des formats tels que .xls, .xlsx, .csv et .tsv.

Comment puis-je effectuer des calculs sur les données Excel en VB.NET ?

IronXL vous permet d'effectuer des calculs comme la somme, le minimum et le maximum directement sur des plages de cellules. Par exemple, utilisez ws('A1:A10').Sum() pour calculer la somme des valeurs dans cette plage.

Puis-je insérer des données dans des cellules spécifiques d'une feuille de calcul Excel en VB.NET ?

Oui, en utilisant IronXL en VB.NET, vous pouvez insérer des données dans des cellules spécifiques en définissant la propriété Value d'une cellule, telle que ws1('A1').Value = 'Hello World'.

Comment puis-je enregistrer un classeur Excel à un chemin spécifique en VB.NET ?

Pour enregistrer un classeur Excel à un chemin spécifique en utilisant IronXL, utilisez la méthode SaveAs avec le chemin de fichier souhaité, par exemple wb.SaveAs('E:\IronXL\Sample.xlsx').

Comment puis-je télécharger la bibliothèque Excel pour le développement VB.NET ?

Vous pouvez télécharger la bibliothèque Excel IronXL pour VB.NET en exécutant la commande dotnet add package IronXL.Excel via NuGet ou en téléchargeant le DLL depuis le site Web IronXL.

Puis-je créer plusieurs feuilles de calcul dans un seul fichier Excel en VB.NET ?

Oui, en utilisant IronXL en VB.NET, vous pouvez créer plusieurs feuilles de calcul dans un seul fichier Excel en invoquant la méthode CreateWorkSheet plusieurs fois sur un objet WorkBook.

Comment puis-je accéder à une feuille de calcul spécifique par nom ou index dans un fichier Excel en VB.NET ?

Avec IronXL en VB.NET, vous pouvez accéder à une feuille de calcul par son nom avec wb.GetWorkSheet('SheetName') ou par index avec wb.WorkSheets(index).

Où les fichiers Excel sont-ils enregistrés par défaut lorsqu'ils sont créés en utilisant IronXL en VB.NET ?

Par défaut, les fichiers Excel créés avec IronXL en VB.NET sont enregistrés dans le dossier 'bin\Debug' du projet, sauf si un chemin différent est spécifié à l'aide de la méthode SaveAs.

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,765,830 | Version : 2025.12 vient de sortir