La forma en que resolví esto hoy fue generar un rango dinámicamente y usar la operación SUM
en él. SUM
ignora las entradas no numéricas:
Lafórmulaqueutilizoestableceunaceldainicialfijaparacomenzareltotalacumulado,columna"Cantidad" en la fila "noviembre eléctrico". No puedo usar trucos regulares, necesito generar el rango dinámicamente para cada fila usando INDIRECT
. Esto requiere crear una cadena que identifique el rango para resumir. Este rango solo debe subir a la fila actual (que es lo que hace que sea un total acumulado). No quiero usar las columnas fijas A, B, C, etc., que se rompen si necesito cambiar las columnas; Necesito usar la celda inicial con el número de columna numérica, y debo usar la notación de celda "R1C1" en lugar de "A1".
Entonces concatené los números de fila y columna (invariables) de la celda inicial, dos puntos (:) para indicar un rango y luego el número de fila y el número de columna actuales. He impreso bastante la fórmula (¡al menos creo que es bonita!) A continuación.
SUM (
INDIRECT (
CONCATENATE (
"R",
ROW ($Amount $electric Nov),
"C",
COLUMN($Amount $electric Nov),
":",
"R",
ROW(),
"C",
COLUMN($Amount $electric Nov)
),
FALSE
)
)
Tenga en cuenta que esto pasa con bastante gracia más allá de las entradas no numéricas para dar un total acumulado confiable.
¡Espero que esto ayude a alguien por ahí!