[Risolto] Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

[Risolto] Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

Buonasera,
conoscete se esista la possibilità di avere un incremento costante nelle celle da sommare?
Per esempio in A1 si scrive la formula =SOMMA(B10;B20;B30;B40;B50;B60;B70;B80;B90;B100)
Quindi si ha sempre un incremento di +10 celle nell'elenco delle celle da sommare nella formula; si può accorciare la formula in qualche modo?
=SOMMA($B$10; B+10 fino a B100) <-- Qualcosa del genere (ovviamente quella che riporto è non funzionante, serve solo per spiegare il risultato che si vuole ottenere)

Grazie mille
Ciao
Ultima modifica di Biagio91 il martedì 5 luglio 2022, 16:55, modificato 1 volta in totale.
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
patel
Volontario attivo
Volontario attivo
Messaggi: 4016
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da patel »

Non mi risulta che esista questa possibilità, però potresti provare a scrivere una Function che lo fa.
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

Interessante.

Grazie mille per il consiglio, spero di riuscire a darti riscontro in tempi ragionevoli.

Grazie mille
Ciao
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1719
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da gioh66 »

Buonasera. Una formula che può fare al caso tuo potrebbe essere

Codice: Seleziona tutto

=MATR.SOMMA.PRODOTTO(A1:A100*(RESTO(RIF.RIGA(A1:A100);10)=0))
Nel file che ti allego in A1:A100 ho creato con la formula CASUALE.TRA un range d'esempio per provare la formula che ho messo in C1.
In C3 per confronto ho messo la formula

Codice: Seleziona tutto

=SOMMA(A10;A20;A30;A40;A50;A60;A70;A80;A90;A100)
Ps.: se vuoi giocarci un po' selezioni l'intervallo A1:A100, lo cancelli e ripristini con ctrl+z. I numeri vengono ripristinati in modo casuale ogni volta e per ciò in C1 e C3 avrai ogni volta una nuova somma.
Allegati
somma a intervalli di 10.ods
(13.03 KiB) Scaricato 52 volte
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
patel
Volontario attivo
Volontario attivo
Messaggi: 4016
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da patel »

Difficile competere col mago delle formule, comunque la funzione potrebbe essere questa

Codice: Seleziona tutto

Function SUMSTEP(vettore(),passo)
for i = 1 to Ubound(vettore) step passo
  SUMSTEP= SUMSTEP + vettore(i,1)
next i
End function
da inserire così
=SUMSTEP(B10:B100;10)
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1719
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da gioh66 »

patel ha scritto: giovedì 30 giugno 2022, 22:19 Difficile competere col mago delle formule, comunque la funzione potrebbe essere questa
Non mago...genio, anzi Eugenio :mrgreen: :lol: :lol:
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

 Editato: [MessaggioEliminato] 
Ultima modifica di Biagio91 il venerdì 1 luglio 2022, 10:41, modificato 1 volta in totale.
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

gioh66 ha scritto: giovedì 30 giugno 2022, 21:08 Una formula che può fare al caso tuo potrebbe essere
Wow, bellissimo l'esempio, mi sa che c'è un foglio in più che non centra, possibile?

Comunque pazzesca questa formula, posso chiederti se mi puoi spiegare come leggerla?
per ora ho capito solamente che lo zero finale ci serve come NumeroRigaMonitor da cui partire, ad esempio se i miei dati partono da A15:A100, al posto dello zero finale dovrò mettere =MATR.SOMMA.PRODOTTO(A15:A100*(RESTO(RIF.RIGA(A15:A100);10)=15)) , altrimenti non avrò i risultati corretti. Ma veramente provando a leggere le descrizioni che si trovano sulla guida per le funzioni usate, non riesco mica a capirne la logica, mi manca il punto di vista giusto probabilmente.
patel ha scritto: giovedì 30 giugno 2022, 22:19 comunque la funzione potrebbe essere questa
C'è qualcosa che non va, a prescindere che il risultato è sbagliato e c'è un bug sullo scorrimento del foglio a formula selezionata.
Mi spiego meglio... se A10=10 A20=20 , la somma è 30, inserisco la formula e il risultato non viene corretto ma risulta 33, infatti somma 1 + 11 + 21;
inoltre, quando viene modificato un dato all'interno del vettore, il risultato somma tenendo il precedente in memoria e quindi se viene ridato il comando il risultato diventa 66;
A1=SUMSTEP(A10:A20;10)
A10 = 10
A20 = 20
C1 = 30

se ora si modifica
A10= 20
A20=0
C1 = 50

p.s. posso chiederti la logica della function? non capisco a cosa serve il numero 1 in questa fase:

Codice: Seleziona tutto

For i = 1 to Ubound(Vettore) Step Passo
  SUMSTEP = SUMSTEP + Vettore(i,1)
Next i
Sembra poi che il valore preso da SUMSTEP rimanga in memoria, ho fatto una prova, in colonna A con scritto A1=1, A2=2 ...A100=100; scrivo su B1 SUMSTEP(A1:100;10) e viene fuori un risultato, tipo 500 e qualcosa... dopodiché cancello le celle alla colonna A fino a A30=30, cancello B1 e riscrivo SUMSTEP(A1:A30;10) e niente...il risultato non è cambiato, quindi in questo caso non ha risommato al precedente valore perché i dati non sono cambiati. Allego file

Ciao
Allegati
Senza nome 2.ods
(11.54 KiB) Scaricato 51 volte
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
patel
Volontario attivo
Volontario attivo
Messaggi: 4016
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da patel »

Io uso Libre e non noto gli errori che dichiari, per quanto riguarda Vettore(i,1) la formula non passa alla funzione un vettore, ma una matrice e quindi occorre prendere la colonna 1 (questo vale anche per excel).
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1719
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da gioh66 »

Biagio91 ha scritto: venerdì 1 luglio 2022, 9:54
gioh66 ha scritto: giovedì 30 giugno 2022, 21:08 Una formula che può fare al caso tuo potrebbe essere
Wow, bellissimo l'esempio, mi sa che c'è un foglio in più che non centra, possibile?

Comunque pazzesca questa formula, posso chiederti se mi puoi spiegare come leggerla?
Ciao. Si l'altro foglio non centra niente con questa discussione.
Per quanto riguarda la formula invece, nel Foglio1, ne ho scomposto il funzionamento su quattro colonne.
In A1:A100 c'è l'intervallo con i numeri da sommare.
In B1 ho inserito la funzione RESTO applicata al RIF.RIGA e che come risultato da il resto di una divisione.

Codice: Seleziona tutto

=RESTO(RIF.RIGA(A1);10)
Poi in C1 ho messo la condizione

Codice: Seleziona tutto

=SE(B1=0;1;0)
Che mette il valore 1 dove il resto della divisione è zero.
In D1 ho moltiplicato il valore della colonna A con quello della colonna C
Infine ho fatto la somma dell'intervallo in colonna D.
Ovviamente tutti questi passaggi non sono necessari con MATR.SOMMA.PRODOTTO in quanto la funzione è impostata per lavorare con le matrici.

Ps.: volendo rendere dinamica la formula si può delimitare gli intervalli con INDIRETTO e due celle d'appoggio, una per delimitare i range delle matrici e l'altra per il secondo argomento della funzione RESTO in modo da variare l'intervallo di somma.
Nell'esempio che riallego nel Foglio3 in C1 ho messo la funzione e in E1 e G1 due menù a tendina che indicano rispettivamente, il valore massimo del range e l'intervallo da sommare.
Allegati
somma a intervalli .ods
(16.84 KiB) Scaricato 43 volte
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

patel ha scritto: venerdì 1 luglio 2022, 12:43 Io uso Libre e non noto gli errori che dichiari...
Nemmeno nell'allegato ?
Prova a cambiare un attimo i valori dell'allegato che ti ho girato io, ti funziona tutto correttamente?
Bah che strana cosa. Ho eseguito test rifacendo lo stesso file di cui allego la versione per OOCalc anche con Libre(rifatto da zero solo per libre), e se si cambiano i valori sulla colonna A, la SUMSTEP si somma al valore precedente.
patel ha scritto: venerdì 1 luglio 2022, 12:43 Per quanto riguarda Vettore(i,1) la formula non passa alla funzione un vettore, ma una matrice e quindi occorre prendere la colonna 1 (questo vale anche per excel).
Perdonami, non capisco proprio....Vettore non passa un vettore ma una matrice...mi sta sfuggendo qualcosa o suona bizzarro? Cosa intendi?
Se ho capito giusto si sta creando un ciclo for next in cui "i" assume di volta in volta un valore definito da un "numero di posizione in elenco" tra un intervallo di valori presi come matrice (A1:A100) e la posizione del primo valore utile ovvero il primo valore che assumerà "i" sarà il numero di posizione che inseriamo; i valori di "i" si concludono quando "i" assume un valore che definiamo come l'ultima voce dell'elenco

Codice: Seleziona tutto

For i=1 To Fine Step 10
  codice da eseguire
Next i
Corretto?

Ora, nel file che ti allego, l'elenco parte da A13, quindi ho messo come primo risultato utile dell'elenco A1:A200 il risultato n13 ovvero quello situato alla cella A13; lo step è impostato a 25, quindi il secondo risultato utile sarà quello in posizione 38 (A38).
Sto ragionando giusto o sto prendendo una cantonata?

Non capisco poi come leggere

Codice: Seleziona tutto

SUMSTEP = SUMSTEP + Vettore(i;1)
Me lo potresti per favore spiegare?

Ti allego nuovo file con esempio spiegato

Grazie mille
Ciao
Allegati
Prova2SUMSTEP.ods
(9.77 KiB) Scaricato 45 volte
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

gioh66 ha scritto: venerdì 1 luglio 2022, 13:00 Per quanto riguarda la formula invece, nel Foglio1, ne ho scomposto il funzionamento su quattro colonne.
Riporto qui parte del messaggio
gioh66 ha scritto: venerdì 1 luglio 2022, 13:00
in una sorta di elenco ToDo tendente al ToUnderstand

OK - In A1:A100 c'è l'intervallo con i numeri da sommare.
OK - In B1 ho inserito la funzione RESTO applicata al RIF.RIGA e che come risultato da il resto di una divisione.
ho capito come hai usato furbamente la formula Resto usando come divisore 10, trasformando i valori con resto 0 in valore 1 e i valori con resto <> 0 li hai trasformati in = 0.
OK - Poi in C1 ho messo la condizione =SE(B1=0;1;0) Che mette il valore 1 dove il resto della divisione è zero.
? - In D1 ho moltiplicato il valore della colonna A con quello della colonna C
A cosa serve questo passaggio?

OK - Infine ho fatto la somma dell'intervallo in colonna D.
? - Ovviamente tutti questi passaggi non sono necessari con MATR.SOMMA.PRODOTTO in quanto la funzione è impostata per lavorare con le matrici.
Eh ok ma tutti questi passaggi sono rinchiusi in =MATR.SOMMA.PRODOTTO(A1:A100*(RESTO(RIF.RIGA(A1:A100);10)=0)) .... seriamente?
Non riesco a vederli...cioè
MATR.SOMMA.PRODOTTO(Matrice1, Matrice2 ...) -> Matrice1 è A1:A100 giusto? --> MATR.SOMMA.PRODOTTO(A1:A100)
RESTO(Dividendo;Divisore), dove quindi il dividendo sarà la Matrice2 ovvero A1:A100 e il divisore sarà lo step che vogliamo dare ovvero ;10. Corretto?
Quindi ora si dice di Moltiplicare il primo valore di Matrice1 per il primo risultato ottenuto dalla Formula RESTO(PrimoValoreDiMatrice2ovveroA1) diviso 10. Corretto?
Mi perdo sul come è inserita la colonna C, dov'è il cambio 0->1 e soprattutto a cosa serve la parte della formula in cui si scrive [...];10)=0)) , pensavo che forse potesse servire per indicare da quale posizione partire a contare i valori, ma vedo purtroppo che se i miei valori cominciano dalla Cella A20, quindi elenco A20:A100, il primo risultato utile deve essere A20, il successivo A20+Step in questo caso step 15, quindi A20, A35 ecc.. per ottenere il risultato corretto la formula dovrà essere riportarla come segue:
=MATR.SOMMA.PRODOTTO(A20:A100*(RESTO(RIF.RIGA(A20:A100);15)=20))
.......beh immagino che ormai si sia capito ma........non mi è per niente chiaro perché devo modificare in questa maniera la formula...cioè....ho perso proprio il filo logico del discorso mi sa, non me lo so spiegare...mi daresti qualche info in più che mi aiuti a capire per favore?
gioh66 ha scritto: venerdì 1 luglio 2022, 13:00 Ps.: volendo rendere dinamica la formula si può delimitare gli intervalli con INDIRETTO e due celle d'appoggio [...]
Fantastica, mi torna super utile, grazie mille

Grazie mille
Ciao
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1719
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da gioh66 »

Allora in realtà le matrici sono due. La prima è l'intervallo A1:A100 e la seconda è quella data dalla parte di formula
(RESTO(RIF.RIGA(INDIRETTO("A1:A"&E1));G1)=0)
che genera una sequenza 0;0;0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;1...ecc...
Se calc avesse un debug della formula migliore si potrebbe evidenziare selezionando la parte di formula e premendo F9 per vedere com'è la matrice.
Nell'esempio nella colonna B è sviluppata la formula RESTO, mentre nella C è sviluppata la condizione che se il risultato di RESTO è diverso da 0 deve dare 0, altrimenti 1.
Nella colonna D è impostata la moltiplicazione di A*C che è quello che fa la funzione MATR.SOMMA.PRODOTTO per poi fare la somma.
Ps.: se vuoi partire dalla riga 20 con uno step di 15, la formula va modificata (devo vedere come) in quanto così come l'hai fatta sommerà
A30+A45+A60 ecc,,,perchè sono queste le celle il cui RESTO è 0.
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1719
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da gioh66 »

Allora volendo partire dalla riga 20 con uno step di 15, la formula va fatta così

Codice: Seleziona tutto

=MATR.SOMMA.PRODOTTO(A20:A100*(RESTO(RIF.RIGA(A20:A100)-15-20;15)=0))
In pratica al RIF.RIGA(A20:A100) si deve sottrarre il valore dello step e il numero di riga da cui inizia l'intervallo.
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

gioh66 ha scritto: venerdì 1 luglio 2022, 17:26 Allora in realtà le matrici sono due. La prima è l'intervallo A1:A100 e la seconda è quella data dalla parte di formula
(RESTO(RIF.RIGA(INDIRETTO("A1:A"&E1));G1)=0)
Quindi il divisore in questo caso ↑ è G1 e viene impostato [...](RESTO(...)=0) ; <- corretto?
gioh66 ha scritto: venerdì 1 luglio 2022, 17:26che genera una sequenza 0;0;0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;1...ecc...

mi è chiaro che il resto sia 0 perché il dividendo è divisibile per il divisore, ma non mi è chiaro come questo possa identificare lo step, non mi è chiaro perché generi questa sequenza, cioè dovrebbero avere tutte e 9 resto tranne la 10 che dovrebbe essere =0 quindi = 1, nella formula non lo vedo "dichiarato" non lo vedo scritto... <-- ??????
gioh66 ha scritto: venerdì 1 luglio 2022, 17:26che genera una sequenza
Ps.: se vuoi partire dalla riga 20 con uno step di 15, la formula va modificata (devo vedere come) in quanto così come l'hai fatta sommerà
A30+A45+A60 ecc,,,perchè sono queste le celle il cui RESTO è 0.


Ma sai che non vorrei sbilanciarmi troppo, ma funziona....cioè....per questo forse vado in confusione, perché quel =0 finale della formula sembrerebbe non essere relazionato al fatto che il RESTO sia = a 0 ma piuttosto sembra altro. ti allego il file con al foglio 3 la formula cosi come l'avevo riproposta.....e funziona....sto dicendo na fesseria?
Allegati
somma a intervalli .ods
(17.42 KiB) Scaricato 40 volte
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
patel
Volontario attivo
Volontario attivo
Messaggi: 4016
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da patel »

Biagio91 ha scritto: venerdì 1 luglio 2022, 13:26 Perdonami, non capisco proprio....Vettore non passa un vettore ma una matrice...mi sta sfuggendo qualcosa o suona bizzarro? Cosa intendi?
http://math.unife.it/architettura/lm.ar ... nload/file
Biagio91 ha scritto: venerdì 1 luglio 2022, 13:26 ----perché quel =0 finale della formula sembrerebbe non essere relazionato al fatto che il RESTO sia = a 0 ma piuttosto sembra altro
non vedo perché, se il resto è zero ti trova solo i multipli.
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

patel ha scritto: venerdì 1 luglio 2022, 18:25 http://math.unife.it/architettura/lm.ar ... nload/file
Grazie mille domani ci guardo
Biagio91 ha scritto: venerdì 1 luglio 2022, 13:26 ----perché quel =0 finale della formula sembrerebbe non essere relazionato al fatto che il RESTO sia = a 0 ma piuttosto sembra altro
patel ha scritto: venerdì 1 luglio 2022, 18:25 non vedo perché, se il resto è zero ti trova solo i multipli.
Perché in base al funzionamento sembra essere altro, almeno per quanto ho riscontrato io.

Grazie mille
Ciao
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

Ciao,
il link di patel a me non funziona, o meglio funziona ma senza "at_download/file" , riporto il link funzionante
http://math.unife.it/architettura/lm.ar ... trici.pdf/

@Patel
Ma quindi come mai a te non da errore e a me si? hai per caso poi più visto il file che ho allegato?

@gioh66
Biagio91 ha scritto: venerdì 1 luglio 2022, 17:51cioè....per questo forse vado in confusione, perché quel =0 finale della formula sembrerebbe non essere relazionato al fatto che il RESTO sia = a 0 ma piuttosto sembra altro. ti allego il file con al foglio 3 la formula cosi come l'avevo riproposta.....e funziona....sto dicendo na fesseria?
Hai per caso novità in merito?
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1719
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da gioh66 »

Ciao. Certo che lo zero finale è relazionato. É la condizione per cui deve leggere la cella la cui posizione corrisponde.
Guardando il primo esempio, quello in cui i dati da sommare sono da A1 in giù, si ha resto uguale a zero alla 10°, 20°, 30° ecc... cella.
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

Ci credo a quello che dici, ma allora perché il file funziona seppur con la formula sbagliata? mica gli sto dicendo di cercare quelli che hanno resto 14, cioè dai su, c'è qualcosa che non torna ve ne rendete conto anche voi no?
Biagio91 ha scritto: venerdì 1 luglio 2022, 17:51 Allegato per verifica, vedi parte aggiunta sul foglio 3
Grazie mille
Ciao
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1719
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da gioh66 »

Certo che gli stai dicendo di sommarti le celle delle quali il resto del RIF.RIGA è 14.
Come ti dicevo sopra però funziona solo perchè inizi la tua serie di numeri dalla cella 14 con uno step di 15.
Se sposti l'inizio della serie di numeri vedrai che la formula sballa.
...se sei soddisfatto delle risposte ricevute metti il [Risolto] https://forum.openoffice.org/it/forum/v ... f=9&t=5661

Libreoffice 6/7 Ubuntu 22.04 - PcLinuxOS - LinuxMint 21
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

Boh, ho messo altre svariate prove e funziona, fintanto che il numero alla fine della formula non supera il valore dello step, la formula funziona.
Guarda ti allego il file perché ho capito che stenti a crederci....io proprio non ho capito come funziona questa formula alla fine, forse sono rimasto incastrato in qualche passaggio ma proprio non lo vedo il cambio in =1 nel caso di resto =0 ...... nella formula dov'è scritto? perdonami se ti tartasso di domande così ma voglio capire.

Vedi sempre foglio 3, ho messo svariate prove funzionanti + una non funzionante in cui il numero finale è maggiore dello step.

Grazie mille
Ciao
Allegati
somma a intervalli (1).ods
(20.09 KiB) Scaricato 40 volte
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Rafkus_pl
Messaggi: 52
Iscritto il: domenica 19 settembre 2021, 15:45

Re: Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Rafkus_pl »

Biagio91 ha scritto: venerdì 1 luglio 2022, 9:54 Sembra poi che il valore preso da SUMSTEP rimanga in memoria, ho fatto una prova, in colonna A con scritto A1=1, A2=2 ...A100=100; scrivo su B1 SUMSTEP(A1:100;10) e viene fuori un risultato, tipo 500 e qualcosa... dopodiché cancello le celle alla colonna A fino a A30=30, cancello B1 e riscrivo SUMSTEP(A1:A30;10) e niente...il risultato non è cambiato, quindi in questo caso non ha risommato al precedente valore perché i dati non sono cambiati.
Confermo, ho notato anche io questo errore. La soluzione è impostare il codice sul valore iniziale di SUMSTEP = 0. Ho anche aggiunto protezione in caso di errore o salto del passaggio.

Codice: Seleziona tutto

Function SUMSTEP(vettore()as variant, optional passo as integer)as variant
  if IsMissing(passo) or passo<=0 then passo=1
  SUMSTEP = 0
  for i = Lbound(vettore) to Ubound(vettore) step passo
    SUMSTEP= SUMSTEP + vettore(i,1)
  next i
End function
OpenOffice 4.1.6 / LibreOffice 7.1.6.2 (x64)/ Windows 10

Sto scrivendo con google traduttore mi scuso per eventuali errori.
Avatar utente
Biagio91
Messaggi: 232
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: [Risolto] Funzione SOMMA ogni tot(costante) celle A10+A20+A30 +(A+10)ecc...

Messaggio da Biagio91 »

Perfetto, ti ringrazio molto, penso che adotterò questa soluzione.
Sarei comunque molto molto curioso di risolvere la questione della formula di gioh6.

Grazie mille
Ciao
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Rispondi