Append Excel Rows
Append Excel Rows
Sección titulada «Append Excel Rows»Tipo: excel-append-rows · Paquete: Excel Activities v1.0.6 · Salida: —
Añade las filas de una DataTable al final de los datos existentes en una hoja. Su comportamiento clave: escribe los encabezados solo si la hoja está vacía. Así, la primera vez crea la tabla con sus títulos, y las siguientes veces solo agrega filas debajo, sin repetir el encabezado. Es la actividad ideal para acumular datos en sucesivas ejecuciones (un histórico, un log diario, resultados que crecen).
Cómo funciona
Sección titulada «Cómo funciona»Detecta la última fila con contenido de la hoja (mirando todas las columnas). Si la hoja está vacía, escribe en la fila 1 los encabezados (los nombres de columna de la DataTable) y debajo los datos; si ya tiene contenido, agrega solo las filas a continuación. Siempre empieza en la columna A. Acepta session o path — ver los dos modos.
- Si el archivo o la hoja no existen, se crean (y la primera escritura lleva encabezados).
- Las columnas se escriben por posición, no por nombre: mantén el mismo orden de columnas en cada ejecución.
- Los valores se escriben con su tipo y los
DBNulldejan la celda vacía — ver cómo llegan los datos. - En modo rápido guarda el archivo al terminar; en modo sesión, al hacer Excel Save o Excel Close.
Parámetros requeridos
Sección titulada «Parámetros requeridos»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
data | DataTable | — | La DataTable cuyas filas se añadirán. |
Parámetros opcionales
Sección titulada «Parámetros opcionales»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
session | ZoanExcelSession | — | Sesión de Excel Open (en vez de path). |
path | string | — | Ruta al .xlsx (se crea si no existe; requerido si no hay sesión). |
sheet | string | int | — | Nombre o índice de la hoja; se crea si no existe. Si se omite, la primera hoja (o "Sheet1" en un libro nuevo). |
Esta actividad no devuelve ningún valor.
Errores comunes
Sección titulada «Errores comunes»| Mensaje | Causa y solución |
|---|---|
'data' es obligatorio. | data está vacío o la expresión dio null. |
'data' debe ser un DataTable. | data no es una DataTable (por ejemplo, un DataRow o una lista). Para una sola fila usa Append Excel Range. |
Indica 'session' o 'path'. | Falta session y path. |
The process cannot access the file '…' because it is being used by another process. | El archivo está abierto en otro programa al guardar. Ciérralo o reintenta con Retry. |
Ejemplo
Sección titulada «Ejemplo»Un proceso diario que va acumulando los resultados en el mismo archivo:
... generar la DataTable "resultadosHoy" ...
Append Excel Rows path = "C:/reportes/acumulado.xlsx" sheet = "Resultados" data = resultadosHoyLa primera ejecución crea la hoja con encabezados; cada día siguiente agrega las filas nuevas debajo, sin duplicar los títulos.
Actividades relacionadas
Sección titulada «Actividades relacionadas»- Append Excel Range — añadir valores sin encabezado.
- Write Excel Sheet — escribir una tabla desde cero.
- Read Excel Sheet — leer el acumulado de vuelta.