Comment trouver et remplacer des données dans Excel avec C# et VB.NET
Tags: csharp, excel, text, dotnet
Published: 2023-08-25 09:15:03

La fonction Rechercher et Remplacer dans Excel offre un moyen pratique de rechercher des données spécifiques dans une feuille de calcul ou un classeur et de les remplacer par de nouvelles valeurs. Cette fonctionnalité peut être exploitée de manière programmée en utilisant C# et VB.NET. Dans cet article, nous explorerons comment tirer parti de ces langages de programmation pour trouver et remplacer des données dans des fichiers Excel.

## Installer la bibliothèque requise
Pour trouver et remplacer des données de manière programmée dans Excel en utilisant C# ou VB.NET, nous pouvons utiliser la bibliothèque [Free Spire.XLS for .NET](https://www.e-iceblue.com/Introduce/free-xls-component.html). Cette puissante bibliothèque permet la création, la lecture, la modification et la conversion de fichiers Excel dans les applications .NET.

Vous pouvez installer Free Spire.XLS for .NET via [NuGet](https://www.nuget.org/packages/FreeSpire.XLS/) en suivant ces étapes :

1. Ouvrez la **Package Manager Console**
2. Exécutez la commande suivante : **Install-Package FreeSpire.XLS**

Maintenant que nous avons installé la bibliothèque nécessaire, plongeons dans le processus de recherche et de remplacement de données dans Excel en utilisant C# et VB.NET.

## Trouver et remplacer des données dans Excel avec C# et VB.NET
**Exemple 1. Trouver et remplacer des données dans une feuille de calcul spécifique d'un fichier Excel avec C# et VB.NET**

Avec Free Spire.XLS for .NET, nous pouvons facilement trouver et remplacer des données dans une feuille de calcul spécifique dans Excel. Voici comment vous pouvez y parvenir en utilisant C# et VB.NET :

C#
```csharp
using Spire.Xls; 
using System.Drawing; 
 
namespace ReplaceDataInWorksheet 
{ 
    internal class Program 
    { 
        static void Main(string[] args) 
        { 
            // Initialiser une instance de la classe Workbook 
            Workbook workbook = new Workbook(); 
            // Charger un fichier Excel 
            workbook.LoadFromFile(@"Sample.xlsx"); 
 
            // Obtenir la première feuille de calcul 
            Worksheet worksheet = workbook.Worksheets[0]; 
 
            // Rechercher les cellules contenant la valeur de chaîne spécifique "Total" dans la feuille de calcul 
            CellRange[] cells = worksheet.FindAllString("Total", true, true); 
 
            // Parcourir les cellules trouvées 
            foreach (CellRange cell in cells) 
            { 
                // Remplacer la valeur de la cellule par une autre valeur 
                cell.Text = "Somme"; 
                // Définir une couleur de fond pour la cellule 
                cell.Style.Color = Color.Yellow; 
            } 
 
            // Enregistrer le fichier résultant dans un emplacement spécifique 
            workbook.SaveToFile("ReplaceDataInWorksheet.xlsx", ExcelVersion.Version2016); 
            workbook.Dispose(); 
        } 
    } 
} 
```
VB.NET
```vb
Imports Spire.Xls 
Imports System.Drawing 
 
Namespace ReplaceDataInWorksheet 
    Friend Class Program 
        Private Shared Sub Main(ByVal args As String()) 
            ' Initialiser une instance de la classe Workbook 
            Dim workbook As Workbook = New Workbook() 
            ' Charger un fichier Excel 
            workbook.LoadFromFile("Sample.xlsx") 
 
            ' Obtenir la première feuille de calcul 
            Dim worksheet As Worksheet = workbook.Worksheets(0) 
 
            ' Rechercher les cellules contenant la valeur de chaîne spécifique "Total" dans la feuille de calcul 
            Dim cells As CellRange() = worksheet.FindAllString("Total", True, True) 
 
            ' Parcourir les cellules trouvées 
            For Each cell As CellRange In cells 
                ' Remplacer la valeur de la cellule par une autre valeur 
                cell.Text = "Somme" 
                ' Définir une couleur de fond pour la cellule 
                cell.Style.Color = Color.Yellow 
            Next 
 
            ' Enregistrer le fichier résultant dans un emplacement spécifique 
            workbook.SaveToFile("ReplaceDataInWorksheet.xlsx", ExcelVersion.Version2016) 
            workbook.Dispose() 
        End Sub 
    End Class 
End Namespace 
```
**Exemple 2. Trouver et remplacer des données dans une plage de cellules spécifique d'une feuille de calcul Excel avec C# et VB.NET**

En plus de trouver et remplacer des données dans une feuille de calcul spécifique, nous pouvons également cibler une plage de cellules particulière. Voici comment vous pouvez y parvenir en utilisant C# et VB.NET :

C#
```csharp
using Spire.Xls;
using System.Drawing;

namespace ReplaceDataInCellRange
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Initialiser une instance de la classe Workbook
            Workbook workbook = new Workbook();
            // Charger un fichier Excel
            workbook.LoadFromFile(@"Sample.xlsx");

            // Obtenir la première feuille de calcul
            Worksheet worksheet = workbook.Worksheets[0];

            // Obtenir une plage de cellules spécifique
            CellRange range = worksheet.Range["A1:C9"];            

            // Rechercher les cellules avec la valeur spécifique "Total" dans la plage de cellules
            CellRange[] cells = range.FindAllString("Total", true, true);

            // Parcourir les cellules trouvées
            foreach (CellRange cell in cells)
            {
                // Remplacer la valeur de la cellule par une autre valeur
                cell.Text = "Sum";
                // Définir une couleur de fond pour la cellule
                cell.Style.Color = Color.Yellow;
            }

            // Enregistrer le fichier résultant dans un emplacement spécifique
            workbook.SaveToFile("ReplaceDataInCellRange.xlsx", ExcelVersion.Version2016);
            workbook.Dispose();
        }
    }
} 
```
VB.NET
```vb
Imports Spire.Xls
Imports System.Drawing

Namespace ReplaceDataInCellRange
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            ' Initialiser une instance de la classe Workbook
            Dim workbook As Workbook = New Workbook()
            ' Charger un fichier Excel
            workbook.LoadFromFile("Sample.xlsx")

            ' Obtenir la première feuille de calcul
            Dim worksheet As Worksheet = workbook.Worksheets(0)

            ' Obtenir une plage de cellules spécifique
            Dim range As CellRange = worksheet.Range("A1:C9")

            ' Rechercher les cellules avec la valeur spécifique "Total" dans la plage de cellules
            Dim cells As CellRange() = range.FindAllString("Total", True, True)

            ' Parcourir les cellules trouvées
            For Each cell As CellRange In cells
                ' Remplacer la valeur de la cellule par une autre valeur
                cell.Text = "Sum"
                ' Définir une couleur de fond pour la cellule
                cell.Style.Color = Color.Yellow
            Next

            ' Enregistrer le fichier résultant dans un emplacement spécifique
            workbook.SaveToFile("ReplaceDataInCellRange.xlsx", ExcelVersion.Version2016)
            workbook.Dispose()
        End Sub
    End Class
End Namespace 
```

## Conclusion
En utilisant la bibliothèque Free Spire.XLS for .NET et la puissance de C# ou VB.NET, la recherche et le remplacement de données dans les classeurs Excel deviennent un processus simplifié. Que vous ayez besoin de modifier des données dans une feuille de calcul spécifique ou dans une plage de cellules définie, les exemples fournis dans cet article constituent une base solide pour améliorer vos capacités de manipulation des données.

## Sujets connexes

- [C#/VB.NET : Rechercher et mettre en évidence des données dans Excel](https://www.e-iceblue.com/Tutorials/Spire.XLS/Spire.XLS-Program-Guide/Find-and-Highlight-Find-and-Highlight-Data-in-Excel-with-C-VB.NET.html)
- [C#/VB.NET : Appliquer des polices aux cellules Excel](https://www.e-iceblue.com/Tutorials/Spire.XLS/Spire.XLS-Program-Guide/Excel-Font-Set-Excel-Font-in-C-VB.NET.html)
- [C#/VB.NET : Envelopper ou dérouler le texte dans les cellules Excel](https://www.e-iceblue.com/Tutorials/Spire.XLS/Spire.XLS-Program-Guide/Excel-Wrap/Unwrap-Wrap/Unwrap-Text-in-Excel-Cells-with-C-VB.NET.html)
- [C#/VB.NET : Fusionner ou séparer des cellules dans Excel](https://www.e-iceblue.com/Tutorials/Spire.XLS/Spire.XLS-Program-Guide/Excel-Cells-Merge-Easily-Merge-Excel-Cells-with-C-VB.NET.html)
- [C#/VB.NET : Ajouter ou supprimer des bordures de cellules dans Excel](https://www.e-iceblue.com/Tutorials/Spire.XLS/Spire.XLS-Program-Guide/Excel-Borders-Add-Excel-Borders-in-C-VB.NET.html)