Ir al contenido

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).

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 DBNull dejan 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ámetroTipoPor defectoDescripción
dataDataTable—La DataTable cuyas filas se añadirán.
ParámetroTipoPor defectoDescripción
sessionZoanExcelSession—Sesión de Excel Open (en vez de path).
pathstring—Ruta al .xlsx (se crea si no existe; requerido si no hay sesión).
sheetstring | 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.

MensajeCausa 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.

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 = resultadosHoy

La primera ejecución crea la hoja con encabezados; cada día siguiente agrega las filas nuevas debajo, sin duplicar los títulos.