Comment ajouter des lignes à un tableau dans un document MS Word en utilisant C#

Comment ajouter des lignes à un tableau dans un document MS Word en utilisant C#

Dans ce tutoriel, vous apprendrez comment ajouter des lignes de manière programmatique à un tableau dans un document MS Word en utilisant C#. Vous ajouterez des lignes à un indice spécifié et insérerez plusieurs lignes vides à la fin du tableau.

Avantages d’ajouter des lignes aux tableaux dans les documents Word

  1. Gestion dynamique du contenu: - Modifier facilement les tableaux existants pour les adapter aux nouvelles données.
  2. Flexibilité: - Ajuster les structures de tableau de manière programmatique sans modifications manuelles.
  3. Automatisation: - Gérer efficacement les données du tableau grâce à des scripts automatisés.

Prérequis : Préparer l’environnement

  1. Installez Visual Studio ou tout IDE .NET.
  2. Assurez-vous que la bibliothèque Aspose.Words est disponible via NuGet.

Guide étape par étape pour ajouter des lignes à un tableau dans Word

Étape 1 : Installer la bibliothèque Aspose.Words

Installez le package Aspose.Words à l’aide du gestionnaire de packages NuGet.

Install-Package Aspose.Words

Étape 2 : Importer les espaces de noms nécessaires

Incluez les espaces de noms Aspose.Words et Aspose.Words.Tables dans votre projet.

using Aspose.Words;
using Aspose.Words.Tables;

Étape 3 : Ouvrir le document Word

Chargez le document MS Word existant.

Document MSWordDocument = new Document(@"MS Word.docx");

Étape 4 : Accéder à la Table

Obtenez la Table par son index dans le document.

Table tableToAddRowsTo = MSWordDocument.FirstSection.Body.Tables[0];

Étape 5 : Créer ou dupliquer une ligne

Créez un nouveau Row ou clonez un Row existant à partir du Table.

Row row = new Row(MSWordDocument);

Étape 6 : Ajouter des Cells au Row

Ajoutez des Cells et du texte au Row.

using Aspose.Words;
using Aspose.Words.Tables;

// Open MS Word Document
Document MSWordDocument = new Document(@"BigDocument.docx");

// Get the Table by index
Table tableToAddRowsTo = MSWordDocument.FirstSection.Body.Tables[0];

// Create a new Row class object
Row row = new Row(MSWordDocument);

// Add three Cells to Row's cells collection
for (int i = 0; i < 3; i++)
{
    Cell cell = new Cell(MSWordDocument);
    cell.AppendChild(new Paragraph(MSWordDocument));
    cell.FirstParagraph.Runs.Add(new Run(MSWordDocument, "Text in Cell " + i));
    row.Cells.Add(cell);
}

// Insert new Row after the first Row
tableToAddRowsTo.Rows.Insert(1, row);

// Clone an existing Row from Table
Row cloneOfRow = (Row)tableToAddRowsTo.FirstRow.Clone(true);

// Remove all content from all Cells
foreach (Cell cell in cloneOfRow)
{
    cell.RemoveAllChildren();
    cell.EnsureMinimum();
}

// Add multiple empty rows to the end of table
for (int i = 0; i < 10; i++)
{
    Row emptyRow = (Row)cloneOfRow.Clone(true);
    tableToAddRowsTo.Rows.Add(emptyRow);
}

// Save updated document
MSWordDocument.Save(@"output.docx");

Étape 7 : Ajouter des Rows à la fin

Utilisez RowCollection.Add pour ajouter des Rows au Table.

tableToAddRowsTo.Rows.Add(row);

Étape 8 : Insérer des Rows à un indice spécifique

Insérez des Rows à un indice spécifique en utilisant RowCollection.Insert.

tableToAddRowsTo.Rows.Insert(1, row);

Étape 9 : Enregistrer le Document mis à jour

Enregistrez à nouveau le document avec les lignes ajoutées.

MSWordDocument.Save(@"Added Rows to Table in MS Word.docx");

Exemple de code pour ajouter des lignes à un tableau dans Word

Voici le code complet pour ajouter des lignes à un tableau :

using Aspose.Words;
using Aspose.Words.Tables;

// Open MS Word Document
Document MSWordDocument = new Document(@"BigDocument.docx");

// Get the Table by index
Table tableToAddRowsTo = MSWordDocument.FirstSection.Body.Tables[0];

// Create a new Row class object
Row row = new Row(MSWordDocument);

// Add three Cells to Row's cells collection
for (int i = 0; i < 3; i++)
{
    Cell cell = new Cell(MSWordDocument);
    cell.AppendChild(new Paragraph(MSWordDocument));
    cell.FirstParagraph.Runs.Add(new Run(MSWordDocument, "Text in Cell " + i));
    row.Cells.Add(cell);
}

// Insert new Row after the first Row
tableToAddRowsTo.Rows.Insert(1, row);

// Clone an existing Row from Table
Row cloneOfRow = (Row)tableToAddRowsTo.FirstRow.Clone(true);

// Remove all content from all Cells
foreach (Cell cell in cloneOfRow)
{
    cell.RemoveAllChildren();
    cell.EnsureMinimum();
}

// Add multiple empty rows to the end of table
for (int i = 0; i < 10; i++)
{
    Row emptyRow = (Row)cloneOfRow.Clone(true);
    tableToAddRowsTo.Rows.Add(emptyRow);
}

// Save updated document
MSWordDocument.Save(@"output.docx");

Conclusion

Ce tutoriel a démontré comment ajouter des lignes à un tableau dans un document MS Word en utilisant C#. En suivant ces étapes, vous pouvez gérer et modifier efficacement les tableaux dans les documents Word de manière programmatique.

 Français