Read Excel Range
Read Excel Range
Sección titulada «Read Excel Range»Tipo: excel-read-range · Paquete: Excel Activities v1.0.6 · Salida: DataTable
Lee un rango de celdas y lo devuelve como una DataTable (los datos tabulares siempre son DataTable). Es útil cuando quieres leer una porción concreta de la hoja: a diferencia de Read Excel Sheet —que lee todo el rango usado—, aquí indicas el rango exacto.
Por defecto la primera fila se trata como encabezados. Si tu rango no los tiene, pon hasHeader = false y las columnas se nombran automáticamente (Col1, Col2…).
Cómo funciona
Sección titulada «Cómo funciona»Lee las celdas del range indicado y construye una DataTable con exactamente ese tamaño: si el rango incluye filas o columnas vacías, aparecen en la tabla (con DBNull). Si hasHeader es verdadero (por defecto), la primera fila da los nombres de columna; si es falso, las columnas se autonombran. Acepta session o path — ver los dos modos.
Solo lee: en modo rápido no modifica el archivo.
Parámetros requeridos
Sección titulada «Parámetros requeridos»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
range | string | — | Dirección del rango, ej. "A1:D20". Evita columnas completas ("A:D"): abarcan más de un millón de filas. |
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 (requerido si no hay sesión). El archivo debe existir. |
sheet | string | int | — | Nombre o índice (desde 1) de la hoja. Si se omite, la primera. |
hasHeader | bool | true | Tratar la primera fila del rango como encabezados. Con false, las columnas se llaman Col1, Col2… |
Devuelve una DataTable con la misma forma que la de Read Excel Sheet:
- Columnas: el texto de la primera fila del rango (un encabezado vacío se llama
Col<n>según su posición), oCol1,Col2… conhasHeader = false. - Valores: cada celda conserva su tipo (desde la versión 1.0.6): número, fecha, booleano o texto; las celdas vacías son
DBNull. Ver cómo llegan los datos. - Un rango que no tiene datos devuelve las filas y columnas del rango, todas con
DBNull.
Errores comunes
Sección titulada «Errores comunes»| Mensaje | Causa y solución |
|---|---|
'range' es obligatorio. | Falta range. |
Indica 'session' o 'path'. | Falta session y path. |
No se encontró el archivo. | path no existe. Valida antes con File Exists. |
'…' is not A1 address or named range. | range no es una dirección válida. Usa la forma "A1:D20". |
There isn't a worksheet named '…'. | No hay una hoja con ese nombre. |
There isn't a worksheet associated with that position. | El índice de hoja no existe (o el nombre es solo un número y se tomó como índice). |
A column named '…' already belongs to this DataTable. | Dos encabezados del rango se llaman igual. Lee con hasHeader = false o ajusta el rango. |
Ejemplo
Sección titulada «Ejemplo»Read Excel Range path = asset("datos.xlsx") range = "A1:C50" → output: tablaLog message = "Filas leídas: " + str(rowCount(tabla))
For Each items = tabla itemVariable = fila └─ activities: Log message = str(fila["Cliente"]) + " — " + str(fila["Total"])Leer un bloque sin encabezados (por ejemplo, los totales de una plantilla):
Read Excel Range path = asset("plantilla.xlsx") range = "F2:G6" hasHeader = false → output: totales
For Each items = totales itemVariable = fila └─ activities: Log message = str(fila["Col1"]) + ": " + str(fila["Col2"])Actividades relacionadas
Sección titulada «Actividades relacionadas»- Read Excel Sheet — leer toda la hoja como DataTable.
- Read Excel Cell — leer una sola celda.
- Write Excel Range — escribir una DataTable en un rango.