Ir al contenido

Excel Online — Find cell

Tipo: excelonline-find-cell  ·  Paquete: Excel Online v1.0.4  ·  Salida: Dictionary<string,object>

Busca la primera celda que contiene un valor dado y devuelve su ubicación. Útil para localizar una fila o columna por su rótulo, o un registro por su código, sin saber de antemano dónde está.

Opera sobre la sesión creada con Excel Online — Connect. Pásala en el parámetro session, o coloca esta actividad dentro del body de Excel Online — Connect para heredarla automáticamente.

Lee el rango usado de la hoja y lo recorre fila por fila, de izquierda a derecha; devuelve la primera coincidencia. Con match-type eliges si el valor debe coincidir exacto, contener el texto o empezar por él.

Detalles de la comparación:

  • No distingue mayúsculas de minúsculas.
  • Compara como texto: el valor buscado y el de cada celda se convierten a string. Los números se comparan con su representación en la configuración regional del robot (por ejemplo 1500 o 12,5) y las fechas, por su número de serie de Excel.
  • Se compara el valor de la celda (el resultado de una fórmula), no el texto con formato que se ve en pantalla.

Es solo lectura: no modifica el libro.

ParámetroTipoPor defectoDescripción
sheetstring—Nombre de la hoja.
valueobject—Valor a buscar. Se compara como texto.
ParámetroTipoPor defectoDescripción
sessionZoanExcelOnlineSession—Sesión de Excel Online — Connect. Dentro del body de Connect se hereda.
match-typestring"exact"Tipo de coincidencia: exact (la celda es igual al valor), contains (la celda contiene el valor) o starts-with (la celda empieza por el valor). No distingue mayúsculas.

Devuelve un Dictionary<string,object> con la celda encontrada:

ClaveTipoContenido
addressstringDirección A1 de la celda, sin nombre de hoja (ej. C5).
rowintNúmero de fila (base 1).
columnintNúmero de columna (base 1: A = 1).
valueobjectValor de la celda, en su tipo original.

Si no encuentra nada, devuelve null: compruébalo con un If (celda == null) antes de usar el resultado.

MensajeCausa y solución
No hay una sesión de Excel Online disponible. Indica 'session' desde una actividad excelonline-connect o coloca esta actividad dentro del cuerpo de la actividad Connect para que herede la sesión automáticamente.La actividad está fuera del body de Connect y no recibió session. Colócala dentro del body o pasa session = libro.
'sheet' es obligatorio. / 'value' es obligatorio.El parámetro está vacío o su expresión dio null.
itemNotFound (Microsoft Graph, 404)No existe una hoja con ese nombre.

No encontrar el valor no es un error: la actividad devuelve null.

Excel Online — Connect credential = credential("m365-finanzas") path = "Reportes/Facturas.xlsx"
└─ body:
Excel Online — Find cell sheet = "Facturas" value = numeroFactura → output: celda
If condition = celda != null
├─ then:
│ Excel Online — Write cell sheet = "Facturas" cell = "E" + celda["row"] value = "Pagada"
└─ else:
Log level = warning message = "Factura no encontrada: " + numeroFactura