Domande frequenti - Calc

From The Document Foundation Wiki
< Faq‎ | Calc
Jump to: navigation, search
This page is a translated version of the page Faq/Calc/125 and the translation is 100% complete.

Other languages:
čeština • ‎dansk • ‎English • ‎français • ‎italiano • ‎русский

Come effettuare una somma cumulativa usando le iterazioni

Contesto: volete sommare i risultati che si susseguono di un determinato conteggio. Come potete procedere, sapendo che, in linea di principio, quando modificate i valori "iniziali" del calcolo, quest'ultimo viene aggiornato e non "ricorda" più il valore precedente?

Nel seguente esempio trovate il risultato del calcolo in C7:

=C10-C13+C16
schermata del conteggio
Situazione iniziale

Vorreste poter inserire dei nuovi valori in C10, C13 o C16 e che il risultato dell'operazione fosse sommato a quello precedente.

In cambio di alcune limitazioni, un tanto si può ottenere usando le iterazioni.

schermata del conteggio
Risultato della somma cumulativa


Spiegazioni

  • A partire da... la possibilità di reinizializzare l'accumulo. Questo lo potete ottenere usando il valore contenuto un una cella di "test". Per esemio, se C5 contiene zero, l'accumulo verrà reinizializzato.
  • Dovete quindi definire il numero di passaggi dell'iterazione usando il menu Strumenti ▸ Opzioni ▸ LibreOffice Calc ▸ Calcola. Impostandolo a 1 determinerà 2 conteggi. Voi però non desiderate sommare due volte C7 alla somma cumulativa. La soluzione è semplice: dovete dividere il risultato cumulativo per 2 (vedete sopra in E7).
  • Lo scarto consentito definisce indirettamente il valore massimo da prendere in considerazione. Per esempio, con un valore di 10000, qualsiasi valore di C7 maggiore a 20000 causerà l'errore 523 (Il processo di calcolo non converge).
  • Passando alla somma cumulativa in se. Il risultato da sommare è già stato ottenuto in C7, ma non potete usare questa cella come valore iniziale in quanto per la somma cumulativa è necessario che venga aggiornata, ogni volta che uno qualsiasi dei valori "iniziali" delle celle usate nel conteggi viene modificato (queste sono le celle visualizzate in arancione nella schermata). Il conteggio viene perciò ripetuto in E7 assieme ad una verifica della necessità ri reinizializzazione ed alla necessaria divisione per 2:
=SE(C5=0;0;E7+((C10-C13+C16)/2))
  • In fase di caricamento del foglio elettronico il programma effettua il ricalcolo... il che è problematico nel caso delle somme cumulative. Perciò, in via precauzionale, dovrete disattivate il conteggio automatico (menu Dati ▸ Calcola ▸ Calcolo automatico) e poi eseguire "manualmente" il ricalcolo usando Ctrl+⇧ Maiusc+F9.

Nell'esempio il foglio è protetto (senza password) in modo che siano accessibili solamente le aree in cui è previsto l'inserimento di dati.