DEV Community

Liam Anderson
Liam Anderson

Posted on

Comment fusionner des documents Word avec C# et VB.NET

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.

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 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# :

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); 
        } 
    } 
} 
Enter fullscreen mode Exit fullscreen mode

Le code suivant montre comment fusionner des documents Word en insérant le fichier entier en utilisant VB.NET :

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 
Enter fullscreen mode Exit fullscreen mode

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# :

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); 
        } 
    } 
} 
Enter fullscreen mode Exit fullscreen mode

Le code suivant montre comment fusionner des documents Word en clonant le contenu du document en utilisant VB.NET :

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 
Enter fullscreen mode Exit fullscreen mode

Sujets connexes

Top comments (0)