Comment fusionner des documents Word avec C# et VB.NET
Tags: csharp, dotnet, word
Published: 2023-09-06 03:45:31

La fusion de documents Word peut considérablement améliorer votre productivité en réduisant le temps et les efforts nécessaires pour accéder et naviguer à travers plusieurs fichiers. Avec toutes les informations pertinentes dans un seul document, vous pouvez rationaliser votre flux de travail, minimiser les distractions et vous concentrer sur la tâche à accomplir. Dans cet article, nous expliquerons comment **fusionner des documents Word en un seul en utilisant C# et VB.NET**.

## Installer la bibliothèque requise
Il existe plusieurs bibliothèques .NET qui vous permettent de manipuler des fichiers Word de manière programmatique. L'une des bibliothèques couramment utilisées est [Free Spire.Doc for .NET](https://www.e-iceblue.com/Introduce/free-doc-component.html).

Avant de commencer, vous devrez importer le fichier DLL de la bibliothèque dans votre application en tant que référence. Vous pouvez le faire en installant la bibliothèque via [NuGet](https://www.nuget.org/packages/FreeSpire.Doc/) en suivant ces étapes :

1. Ouvrez la "**Package Manager Console**".
2. Exécutez cette commande : **Install-Package FreeSpire.Doc**

## Fusionner des documents Word avec C# et VB.NET
Free Spire.Doc for .NET propose deux façons de fusionner des documents Word : en insérant le fichier entier et en clonant le contenu du document.

**Exemple 1. Fusionner des documents Word en insérant le fichier entier en utilisant C# et VB.NET**

L'exemple de code suivant montre comment fusionner des documents Word en insérant le fichier entier en utilisant C# :
```csharp
using Spire.Doc; 
 
namespace MergeWord 
{ 
    class Program 
    { 
        static void Main(string[] args) 
        { 
            // Créer une instance de Document 
            Document document = new Document(); 
 
            // Charger le document Word d'origine 
            document.LoadFromFile("Doc1.docx", FileFormat.Docx); 
 
            // Insérer un autre document Word entièrement dans le document d'origine 
            document.InsertTextFromFile("Doc2.docx", FileFormat.Docx); 
 
            // Enregistrer le document résultant 
            document.SaveToFile("MergedWord.docx", FileFormat.Docx); 
        } 
    } 
} 
```
Le code suivant montre comment fusionner des documents Word en insérant le fichier entier en utilisant VB.NET :
```vb
Imports Spire.Doc 
 
Namespace MergeWord 
    Class Program 
        Private Shared Sub Main(ByVal args() As String) 
            ' Créer une instance de Document 
            Dim document As Document = New Document 
 
            ' Charger le document Word d'origine 
            document.LoadFromFile("Doc1.docx", FileFormat.Docx) 
 
            ' Insérer un autre document Word entièrement dans le document d'origine 
            document.InsertTextFromFile("Doc2.docx", FileFormat.Docx) 
 
            ' Enregistrer le document résultant 
            document.SaveToFile("MergedWord.docx", FileFormat.Docx) 
        End Sub 
    End Class 
End Namespace 
```
**Exemple 2. Fusionner des documents Word en clonant le contenu du document en utilisant C# et VB.NET**

L'exemple de code suivant montre comment fusionner des documents Word en clonant le contenu du document en utilisant C# :
```csharp
using Spire.Doc; 
 
namespace MergeWord 
{ 
    class Program 
    { 
        static void Main(string[] args) 
        { 
            // Charger deux documents Word 
            Document doc1 = new Document("Doc1.docx"); 
            Document doc2 = new Document("Doc2.docx"); 
 
            // Parcourir le deuxième document pour obtenir toutes les sections 
            foreach (Section section in doc2.Sections) 
            { 
 
                // Parcourir les sections du deuxième document pour obtenir leurs objets enfants 
                foreach (DocumentObject obj in section.Body.ChildObjects) 
                { 
 
                    // Obtenir la dernière section du premier document 
                    Section lastSection = doc1.LastSection; 
 
                    // Ajouter tous les objets enfants à la dernière section du premier document 
                    lastSection.Body.ChildObjects.Add(obj.Clone()); 
                } 
            } 
 
            // Enregistrer le document résultant 
            doc1.SaveToFile("MergeDocuments.docx", FileFormat.Docx); 
        } 
    } 
} 
```
Le code suivant montre comment fusionner des documents Word en clonant le contenu du document en utilisant VB.NET :
```vb
Imports Spire.Doc 
 
Namespace MergeWord 
    Class Program 
        Private Shared Sub Main(ByVal args() As String) 
            ' Charger deux documents Word 
            Dim doc1 As Document = New Document("Doc1.docx") 
            Dim doc2 As Document = New Document("Doc2.docx") 
 
            ' Parcourir le deuxième document pour obtenir toutes les sections 
            For Each section As Section In doc2.Sections 
 
                ' Parcourir les sections du deuxième document pour obtenir leurs objets enfants 
                For Each obj As DocumentObject In section.Body.ChildObjects 
 
                    ' Obtenir la dernière section du premier document 
                    Dim lastSection As Section = doc1.LastSection 
 
                    ' Ajouter tous les objets enfants à la dernière section du premier document 
                    lastSection.Body.ChildObjects.Add(obj.Clone) 
                Next 
            Next 
 
            ' Enregistrer le document résultant 
            doc1.SaveToFile("MergeDocuments.docx", FileFormat.Docx) 
        End Sub 
    End Class 
End Namespace 
```

## Sujets connexes

- [C#/VB.NET : Convertir Word en PDF](https://www.e-iceblue.com/Tutorials/Spire.Doc/Spire.Doc-Program-Guide/How-to-Convert-Word-to-PDF.html)
- [C#/VB.NET : Convertir Word en images (JPG, PNG et SVG)](https://www.e-iceblue.com/Tutorials/NET/Spire.Doc/Program-Guide/Conversion/C-/VB.NET-Convert-Word-to-Images-JPG-PNG-and-SVG.html)
- [C#/VB.NET : Convertir Word en Excel](https://www.e-iceblue.com/Tutorials/NET/Spire.Doc/Program-Guide/Conversion/C-/VB.NET-Convert-Word-to-Excel.html)
- [C#/VB.NET : Convertir du texte en Word ou de Word en texte](https://www.e-iceblue.com/Tutorials/Spire.Doc/Spire.Doc-Program-Guide/How-to-Convert-Word-to-Text.html)
- [C#/VB.NET : Convertir Word en HTML](https://www.e-iceblue.com/Tutorials/Spire.Doc/Spire.Doc-Program-Guide/Word-to-HTML-Convert-Word-to-HTML-with-C-VB.NET.html)
- [C#/VB.NET : Convertir HTML en Word](https://www.e-iceblue.com/Tutorials/Spire.Doc/Spire.Doc-Program-Guide/How-to-Convert-HTML-to-Word.html)
- [C#/VB.NET : Convertir OpenXML en Word ou de Word en OpenXML](https://www.e-iceblue.com/Tutorials/Spire.Doc/Spire.Doc-Program-Guide/How-to-Convert-XML-to-Word.html)
- [C#/VB.NET : Convertir RTF en document Word/Docx et vice versa](https://www.e-iceblue.com/Tutorials/Spire.Doc/Spire.Doc-Program-Guide/How-to-Convert-Word-to-RTF.html)