Com afegir files a una taula en un document MS Word amb C#

Com afegir files a una taula en un document MS Word amb C#

Problemes de format:Utilitzeu tipus de dades i format adequats quan prepareu dades per a la combinació de correu per mantenir la coherència.

Utilitzeu tipus de dades i format adequats quan prepareu dades per a la combinació de correu per mantenir la coherència.

  1. Gestió dinàmica de contingut: - Verifiqueu que la vostra plantilla de Word estigui formatada correctament i que no contingui elements no compatibles que puguin causar errors durant el processament.
  2. Flexibilitat: - Per a escenaris d’automatització de documents més complexos, Aspose.Words ofereix un potent motor de informes LINQ que va més enllà de la simple combinació de correu. Admet:.
  3. Automatització: - Regions repetides — genera files de taula, elements de llista o paràgrafs a partir de col·leccions.

Expressions en línia — incrusta expressions C# directament a la sintaxi de la plantilla.

  1. Fonts de dades imbricades — gestiona dades jeràrquiques (p. ex., comandes amb línies d’articles).
  2. Les plantilles del LINQ Reporting Engine utilitzen la sintaxi <<[expression]>> i blocs <<foreach>>...<<end>>, fent‑les més expressives que el mail merge per a documents basats en dades.

Recursos: Millora les teves habilitats d’automatització de documents

Imagina un món on les factures es creen soles, els rebuts es materialitzen amb un clic, i la teva paperassa comptable desapareix màgicament a l’èter digital. Sona com un somni? Amb Aspose.Words per a .NET, aquest somni es converteix en la teva realitat. Diu adéu a la introducció manual de dades i hola a la generació de documents automatitzada i optimitzada que fa que el teu negoci sembli tan professional com és eficient.

Per què avançar cap al futur de la facturació automatitzada?.

Install-Package Aspose.Words

El temps és diners: Recupera innombrables hores dedicades a la facturació manual.

Precisió i professionalitat: Genera factures de marca, sense errors, cada vegada.

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

Satisfacció del client: Envia rebuts i factures puntuals i precisos, augmentant la confiança del client.

Escalabilitat a demanda: Gestiona pics de facturació sense esforç.

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

La teva caixa d’eines: Preparant-se per al viatge d’automatització

Abans d’endinsar-nos en la màgia de l’automatització, reunim les nostres eines:.

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

El .NET Forge: Baixa i instal·la l’últim SDK de .NET per al teu sistema.

Aspose.Words Alchemy: Afegeix Aspose.Words al teu projecte utilitzant el NuGet Package Manager:dotnet add package Aspose.Words.

Row row = new Row(MSWordDocument);

El Blueprint de la plantilla: Dissenya el teu InvoiceTemplate.docx amb marcadors de posició com {{CustomerName}}, {{InvoiceDate}}, i una taula per a les línies d’articles.

Creant la teva factura automatitzada.

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");

Carregant la teva plantilla

La nostra història comença carregant la plantilla de factura, la base del nostre document automatitzat.

tableToAddRowsTo.Rows.Add(row);

Omplint amb les dades del client

A continuació, infonem vida a la nostra plantilla amb les dades del client, fent que cada factura sigui únicament personalitzada.

tableToAddRowsTo.Rows.Insert(1, row);

Afegint taules dinàmiques

Aquí és on la màgia realment succeeix—afegint dinàmicament elements de línia a la teva factura.

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

Amb les dades i els elements de línia en el seu lloc, guardem la nostra obra mestra com a PDF, preparada per a la distribució.

Èpics del món real: On la facturació automatitzada prospera:

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");

Conclusió

Reialmes de Subscripció: Crea factures recurrents amb detalls de facturació dinàmics, assegurant transaccions fluides.

 Català