
La combinación de correspondencia facilita la creación de documentos personalizados en masa, como cartas, correos electrónicos, facturas o certificados. Comienza con una plantilla y la llenas utilizando datos de una hoja de cálculo. Cada fila en el archivo de Excel genera un nuevo documento con los detalles correctos en los lugares adecuados. Es una forma inteligente de automatizar tareas repetitivas como enviar facturas o generar informes. En este artículo, te mostraremos cómo realizar una combinación de correspondencia desde Excel utilizando C#. Empecemos.
Este artículo cubre los siguientes temas:
- C# Biblioteca de Combinación de Correspondencia de Excel
- ¿Cómo funciona la combinación de correspondencia con Aspose.Cells?
- Guía Paso a Paso para Realizar una Combina de Correspondencia desde Excel
- Complete C# Code to Mail Merge Data
- Recursos gratuitos
- Preguntas Frecuentes
C# Biblioteca de Mail Merge para Excel
Usaremos la Aspose.Cells for .NET API para realizar una combinación de correspondencia desde Excel en C#. Ofrece poderosas herramientas para trabajar con archivos de Excel directamente en su código. Permite a los desarrolladores crear, leer y actualizar hojas de cálculo con facilidad. También puede manejar tareas avanzadas como la combinación de correspondencia sin problemas. La biblioteca hace que la automatización de Excel sea rápida, flexible y confiable.
Para comenzar con Aspose.Cells for .NET, sigue estas sencillas instrucciones de instalación:
- Por favor descárgalo desde el releases.
- Instale la biblioteca usando NuGet Package Manager con el siguiente comando:
PM> Install-Package Aspose.Cells
¿Cómo funciona la combinación de correspondencia con Aspose.Cells?
Aspose.Cells no soporta `mail merge” en the same way as Word.Agrega mail merge a Excel usando Smart Markers.Estos marcadores actúan como marcadores de posición en su hoja de cálculo, y la biblioteca los reemplaza con datos reales en tiempo de ejecución. A medida que procesa cada fila de su fuente de datos, completa la plantilla y expande el contenido automáticamente, permitiéndole generar documentos totalmente personalizados con solo unas pocas líneas de código C#.
&=DataSource.ColumnName
Durante el procesamiento, Aspose.Cells reemplaza estos con datos reales de un DataTable
, List<T>
o cualquier IEnumerable
. Por ejemplo, la biblioteca reemplaza &=Data.Name
con valores de la columna Name en la tabla de datos.
Preparar la plantilla de Excel
Cree un archivo de Excel (por ejemplo, Template.xlsx) con marcadores inteligentes. Aquí hay un diseño de muestra:
Nombre | Correo | Monto |
---|---|---|
&=Data.Name | &=Data.Email | &=Data.Amount |
Guía Paso a Paso para Realizar una Combinación de Correspondencia desde Excel en C#
Para realizar una combinación de correspondencia desde Excel utilizando Aspose.Cells for .NET, simplemente sigue estos pasos:
Paso 1: Cargar la plantilla de Excel
Cargue el archivo de plantilla de Excel que contiene Marcadores Inteligentes utilizando la clase Workbook
. La clase Workbook
representa todo el archivo de Excel (libro de trabajo).El archivo de plantilla cargado actúa como el diseño para su salida fusionada.
Workbook workbook = new Workbook("Template.xlsx");
Paso 2: Crear una DataTable
Aquí, creamos un DataTable que simula tu fuente de datos de Excel. Cada columna coincide con un marcador inteligente, y cada fila representa un conjunto de valores a insertar. La clase DataTable
de System.Data
contiene los datos que deseas combinar. Cada columna coincide con un marcador inteligente, y cada fila proporciona un conjunto único de valores.
DataTable dt = new DataTable("Data");
dt.Columns.Add("Name");
dt.Columns.Add("Email");
dt.Columns.Add("Amount");
dt.Rows.Add("Alice", "alice@example.com", 1000);
dt.Rows.Add("Bob", "bob@example.com", 1500);
Paso 3: Vincula tu plantilla de Excel a la fuente de datos
Usamos la WorkbookDesigner
clase para conectar la plantilla con los datos. La WorkbookDesigner
es una clase especial en Aspose.Cells diseñada para manejar marcadores inteligentes y enlace de datos. Conecta tu fuente de datos (como un DataTable) con la plantilla de Excel. El método SetDataSource()
vincula el DataTable (Data) a los marcadores inteligentes en el libro de trabajo.
WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);
SetDataSource()
adjunta el DataTable a los Marcadores Inteligentes en el libro de trabajo."Data"
es el nombre utilizado en los marcadores como&=Data.Name
.
Paso 4: Ejecutar la combinación de correspondencia
Una vez que has establecido la fuente de datos, llamar a Process()
llena todos los Marcadores Inteligentes con valores reales de la DataTable. Este comando ejecuta la combinación de correspondencia. Recorre los Marcadores Inteligentes y los reemplaza con valores reales de la fuente de datos.
designer.Process();
Paso 5: Guarda el archivo
Finalmente, guardamos el archivo completado con todos los datos combinados.
workbook.Save("MergedOutput.xlsx");
Guarda la salida combinada como un PDF
Puede guardar fácilmente el documento de Excel combinado como un PDF con una línea de código.
// Set PDF options
PdfSaveOptions options = new PdfSaveOptions();
// Save as PDF
workbook.Save("MergedDocument.pdf", SaveFormat.Pdf);
Complete C# Code to Mail Merge Data
// Cargar la plantilla de Excel
Workbook workbook = new Workbook("Template.xlsx");
// Create dummy data
DataTable dt = new DataTable("Data");
dt.Columns.Add("Name");
dt.Columns.Add("Email");
dt.Columns.Add("Amount");
dt.Rows.Add("Alice", "alice@example.com", 1000);
dt.Rows.Add("Bob", "bob@example.com", 1200);
// Establecer la fuente de datos
WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);
// Procesar marcadores inteligentes (fusión de correspondencia)
designer.Process();
// Save the output
workbook.Save("MergedOutput.xlsx");
Output
El archivo Excel de salida contiene una fila para cada entrada con datos personalizados rellenados en lugar de marcadores inteligentes.

Mail Merge from Excel in C# - Salida
Consigue una licencia gratuita
Obtén una licencia temporal gratuita que te permite probar todas las características de Aspose.Cells for .NET sin limitaciones. Es ideal si estás evaluando la API para tareas de automatización como combinación de correspondencia, informes de Excel o exportación a PDF.
Excel a combinación de correspondencia de Excel: Recursos gratuitos
Además de la combinación de correspondencia de Excel, proporcionamos varios recursos para ayudarte a profundizar tu comprensión de Aspose.Cells for .NET. Consulta nuestra documentación, tutoriales y foros comunitarios para más información.
- Guía del desarrollador
- Aplicaciones en línea gratuitas
- Referencia de API
- Guías y artículos de cómo hacer
Preguntas Frecuentes (FAQs)
Q1: ¿Puedo usar la combinación de correspondencia de Excel sin tener Microsoft Office instalado?
Sí, la combinación de correspondencia no requiere Microsoft Office. Aspose.Cells funciona de manera independiente y maneja todo a través de sus propias API.
Q2: ¿Cuál es la diferencia entre los Marcadores Inteligentes y los Campos de Combinación de Palabras?
Los marcadores inteligentes funcionan dentro de Excel y son más personalizables para la expansión de datos por fila. Los campos combinados son específicos de Word.
Q3: ¿Puedo fusionar de Excel a Word usando Aspose?
Sí, pero necesitarás Aspose.Words para ese escenario.
Q4: ¿Es posible automatizar la generación de PDF a partir de combinaciones de Excel?
Absolutamente. Solo guarda el libro final en formato PDF utilizando Aspose.Cells.
Conclusión
La combinación de correspondencia desde Excel ofrece una forma poderosa de generar documentos dinámicos y personalizados utilizando la interfaz de hoja de cálculo familiar. En este artículo del blog, recorrimos la combinación de correspondencia desde Excel utilizando C#. Al utilizar los Marcadores Inteligentes de Aspose.Cells, obtienes la flexibilidad para automatizar completamente este proceso y generar miles de facturas, certificados o cualquier informe estructurado.
Si tiene alguna pregunta o necesita más ayuda, no dude en ponerse en contacto en nuestro free support forum.