Formula generica
=SUM(INDEX((column),1):(@column))
Sommario
Per creare un totale parziale in una tabella Excel, è possibile utilizzare la funzione INDICE impostata con un riferimento strutturato. Nell'esempio mostrato, la formula in F5 è:
=SUM(INDEX((Total),1):(@Total))
Quando viene copiata nella colonna, questa formula restituirà un totale parziale in ogni riga.
Spiegazione
Al centro, questa formula ha uno schema semplice come questo:
=SUM(first:current)
Dove "first" è la prima cella nella colonna Total e "current" è un riferimento a una cella nella riga corrente della colonna Total.
Per ottenere un riferimento alla prima cella, usiamo INDICE in questo modo:
INDEX((Total),1)
Qui, la matrice è l'intera colonna "Totale" e il numero di riga è 1. Ciò funziona perché la funzione INDICE restituisce un riferimento alla prima cella, non il valore effettivo.
Per ottenere un riferimento alla riga corrente, usiamo:
(@Total)
Questa è la sintassi di riferimento strutturato standard per "questa riga".
Quando la formula viene copiata nella colonna, il riferimento alla prima cella non cambia, ma il riferimento alla cella corrente cambia in ogni riga. Il risultato è un riferimento che si espande. La funzione SUM somma i valori nell'intervallo in ogni riga, creando un totale parziale.
Gamma in espansione semplice
Perché non utilizzare una gamma in espansione semplice come questa?
=SUM($E$5:E5)
Per qualche motivo, questo tipo di riferimento misto viene danneggiato in una tabella Excel quando vengono aggiunte righe. L'uso di INDICE con un riferimento strutturato risolve il problema.