Hur man lägger till rader i en tabell i MS Word-dokument med C#

Hur man lägger till rader i en tabell i MS Word-dokument med C#

I detta tutorial kommer du att lära dig hur man programmässigt lägger till rader i en tabell i ett MS Word-dokument med hjälp av C#. Du kommer att lägga till rader vid ett angivet index och infoga flera tomma rader i slutet av tabellen.

Fördelar med att Lägga till Rader i Tabeller i Word-Dokument

  1. Dynamisk Innehållshantering:
    • Ändra enkelt befintliga tabeller för att passa ny data.
  2. Flexibilitet:
    • Justera tabellstrukturer programmässigt utan manuella redigeringar.
  3. Automatisering:
    • Hantera tabelldata effektivt genom automatiserade skript.

Förutsättningar: Förbereda Miljön

  1. Ha Visual Studio eller någon .NET IDE installerad.
  2. Se till att Aspose.Words-biblioteket är tillgängligt via NuGet.

Steg-för-Steg Guide för att Lägga till Rader i en Tabell i Word

Steg 1: Installera Aspose.Words Bibliotek

Installera Aspose.Words-paketet med hjälp av NuGet-pakethanteraren.

Install-Package Aspose.Words

Steg 2: Importera Nödvändiga Namnrymder

Inkludera Aspose.Words och Aspose.Words.Tables namnrymder i ditt projekt.

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

Steg 3: Öppna Word-Dokumentet

Ladda det befintliga MS Word-dokumentet.

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

Steg 4: Åtkomst till Tabellen

Hämta Tabellen med hjälp av dess index från dokumentet.

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

Steg 5: Skapa eller Klona en Rad

Skapa en ny Rad eller klona en befintlig från Tabellen.

Row row = new Row(MSWordDocument);

Steg 6: Lägg till Celler i Raden

Lägg till Celler och text i Raden.

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 i Cell " + i));
    row.Cells.Add(cell);
}

Steg 7: Lägg till Rader i Slutet

Använd RowCollection.Add för att lägga till Rader i Tabellen.

tableToAddRowsTo.Rows.Add(row);

Steg 8: Infoga Rader vid ett Specifikt Index

Infoga Rader vid ett specifikt index med hjälp av RowCollection.Insert.

tableToAddRowsTo.Rows.Insert(1, row);

Steg 9: Spara det Uppdaterade Dokumentet

Spara dokumentet med de tillagda raderna.

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

Exempel på Kod för att Lägga till Rader i Tabell i Word

Nedan finns den kompletta koden för att lägga till rader i en tabell:

// Öppna MS Word Dokument
Document MSWordDocument = new Document(@"input.docx");

// Hämta Tabellen med index
Table tableToAddRowsTo = MSWordDocument.FirstSection.Body.Tables[0];

// Skapa ett nytt Row-klassobjekt
Row row = new Row(MSWordDocument);

// Lägg till tre Celler i Rows cellkollektion
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 i Cell " + i));
    row.Cells.Add(cell);
}

// Infoga ny Rad efter den första Raden
tableToAddRowsTo.Rows.Insert(1, row);

// Klona en befintlig Rad från Tabellen
Row cloneOfRow = (Row)tableToAddRowsTo.FirstRow.Clone(true);

// Ta bort allt innehåll från alla Celler
foreach (Cell cell in cloneOfRow)
{
    cell.RemoveAllChildren();
    cell.EnsureMinimum();
}

// Lägg till flera tomma rader i slutet av tabellen
for (int i = 0; i < 10; i++)
{
    Row emptyRow = (Row)cloneOfRow.Clone(true);
    tableToAddRowsTo.Rows.Add(emptyRow);
}

// Spara det uppdaterade dokumentet
MSWordDocument.Save(@"output.docx");

Slutsats

Denna tutorial har visat hur man lägger till rader i en tabell i ett MS Word-dokument med hjälp av C#. Genom att följa dessa steg kan du effektivt hantera och modifiera tabeller inom Word-dokument programmässigt.

 Svenska