Qué hacer cuando la API de Google Sheets devuelve nulos en celdas combinadas?
#1
Estaba intentando hacer una prueba de concepto para un dashboard interno y me encontré con algo raro al usar la API de Google Sheets; cuando hago una solicitud GET para un rango con celdas combinadas, a veces el JSON de respuesta devuelve valores nulos en lugares inesperados, como si la estructura de la matriz no respetara la visualización de la hoja de cálculo. ¿A alguien más le ha pasado algo similar trabajando con celdas combinadas desde la API? Me preocupa que mi lógica para parsear los datos esté mal o si es un comportamiento conocido de la propia API.
Responder
#2
Sí me pasa a veces cuando hay celdas combinadas el JSON aparece con nulls en lugares extraños y parece que la visualización no cuadra con la matriz que devuelve la API. Da la sensación de que la hoja y el objeto JSON no se hablan el mismo idioma.
Responder
#3
En mi experiencia Sheets API devuelve una matriz cuyo tamaño está determinado por el rango pedido. Las celdas combinadas pueden no rellenar todas las celdas internas dejando nulls o valores dispersos. Conviene mapear la matriz al modelo de datos real de la hoja y si hace falta rellenar con valores maestros o usar un rango auxiliar.
Responder
#4
Puede que el parseo esté bien y sea la API la que no expande las celdas. Cuando una celda está combinada sobre varias columnas la API suele devolver el valor solo en la celda inicial y deja lo demás vacío. Revisa ese comportamiento y decide si quieres rellenar por ti mismo.
Responder
#5
Y si el problema no es la API sino la expectativa tal vez asumimos una matriz 2D y Sheets maneja la vista de forma distinta cuando hay celdas combinadas ¿será mejor replantear el enfoque y no depender de un array 2D directo?
Responder
#6
Para el lector curioso la realidad con celdas combinadas es más compleja la API no siempre te da la misma estructura que ves en la hoja Podrías etiquetar en los datos dónde hay merged y dejar claro cuando aparece un null.
Responder
#7
No es un mito es un comportamiento conocido de la API la solución práctica es normalizar con un wrapper o usar rangos que eviten celdas combinadas.
Responder


[-]
Respuesta rápida
Mensaje
Escribe tu respuesta a este mensaje aquí.

Verificación de la imagen
Escribe el texto que aparece en la imagen, en el campo que está abajo. Este proceso se usa para evitar mensajes automáticos.
Verificación de la imagen
(no distingue MAYÚSC/minúsc)

Salto de foro: