ripetere un calcolo fino ad una certa condizione

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
ildubbio
Messaggi: 3
Iscritto il: martedì 13 marzo 2018, 11:49

ripetere un calcolo fino ad una certa condizione

Messaggio da ildubbio »

Esempio
colonna da a1 ad a20, con tanti valori diversi

All'inizio B1=costante, ad esempio 400
B2= al numero di celle tra a1 e a20 con valori maggiori di 0; ad esempio 14 (su 20)

Condizione 1
Devo effettuare la seguente verifica per ogni cella della colonna a con valori diversi da 0 (ad es. da 1 a 14)
Se An<=B1/B2 allora devo scegliere il valore An (con n da 1 a 14)....mettiamo che da questa verifica "x" celle della colonna A soddisfano la condizione (ad esempio 3 celle);

Condizione 2
poi conto le celle che non soddisfano la condizione (quindi nell'esempio saranno B2-x=11), e devo di effettuare il seguente controllo
Se An<=[B1-somma(celle che soddisfano la condizione 1)/(B2-x)] allora devo scegliere il valore An (con n da 1 a 14-x).....mettiamo che da questa verifica "y" celle della colonna A soddisfano la condizione (ad esempio 1 cella);

poi conto le celle che non soddisfano la condizione (quindi nell'esempio saranno B2-x-y=10), e devo di effettuare il seguente controllo
Se An<=[B1-somma(celle che soddisfano la condizione 1 e 2)/(B2-x)] allora devo scegliere il valore An (con n da 1 a 14-x-y).

e così via fino a che il valore [B1-somma(celle che soddisfano la condizione da 1 e i)] è superiore a tutte le celle da A1 ad A14

lo so che sembra complicato...ma è più difficile a dirsi che a farsi...(forse)
Allego file che spero aiuti a capire meglio.

si tratta di una soluzione che mi serve a ripartire una bolletta aqp con fasce di consumi
Allegati
esempio.ods
(17.87 KiB) Scaricato 139 volte
OpenOffice 3.1 su Windows Vista
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1723
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: ripetere un calcolo fino ad una certa condizione

Messaggio da gioh66 »

Buondì, io non ci ho capito un tubo, anche perchè mi sembra che il file che hai postato non calza con la tua spiegazione. Magari metti anche i risultati che vorresti ottenere scritti a mano.
...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
ildubbio
Messaggi: 3
Iscritto il: martedì 13 marzo 2018, 11:49

Re: ripetere un calcolo fino ad una certa condizione

Messaggio da ildubbio »

hai ragione è complicato da spiegare
io devo ottenere una divisione per fasce di consumi dell'acqua.
le tre fasce di consumi complessivi sono riportati in B1, B2 e B3, e li devo ripartire secondo i consumi dei singoli che si trovano nelle celle da B10 a B23.

e si fa in questo modo:
divido B1 per il numero degli utenti che hanno consumato (nell'esempio sono 465/14). questo numero lo confronto con i consumi dei singoli. se il consumo del singolo è minore di 465/14 allora il suo consumo resta in prima fascia...nell'esempio dopo la prima verifica sono <= di 465/14 le celle B18, B20 e B23.
però....una volta fatta questa prima verifica, devo rifare la stessa cosa in questo modo: devo verificare che i restanti utenti abbiano i consumi inferiori a (465-B18-B20-B23)/(14-3) cioè devo ripartire il "resto" dei consumi sul "resto" degli utenti. nell'esempio (465-B18-B20-B23)/(14-3)=36.75 e scopro che anche B14 resta in prima fascia essendo <= di 36.75...
Questa verifica (che vorrei automatizzare) deve andare avanti fin tanto che dopo n-esimo passaggio il rapporto "resto consumi"/"resto utenti" è minore a tutti i singoli consumi (celle da B10 a B23), cosa che nel mio caso accade dopo tre passaggi e con il valore di 36.81

aiutoooo
OpenOffice 3.1 su Windows Vista
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: ripetere un calcolo fino ad una certa condizione

Messaggio da unlucky83 »

io devo ottenere una divisione per fasce di consumi dell'acqua.
ildubbio ha scritto: Questa verifica (che vorrei automatizzare) deve andare avanti fin tanto che dopo n-esimo passaggio il rapporto "resto consumi"/"resto utenti" è minore a tutti i singoli consumi (celle da B10 a B23), cosa che nel mio caso accade dopo tre passaggi e con il valore di 36.81

aiutoooo
Quindi 36,81 è giusto o sbagliato? Visto che parli di automatizzare il passaggio, immagino che sia giusto e che te tutte le volte fai un procedimento del genere.
Sarebbe utile capire quali celle sono di input, quali quelle di lavoro e qual'è il risultato finale...vuoi scoprire semplicemente 36,81?
Inoltre, a seconda dei casi può avvenire al passaggio 4, 5, 6 ...?
Dovresti davvero preparare un nuovo allegato, perchè la tua spiegazione non chiarisce ancora ciò che vuoi ottenere. Magari organizzalo su più fogli. Nel primo foglio metti i dati di partenza (con intestazioni in alto che spieghino il significato del numero), nel secondo foglio incolli il primo aggiungendo la procedura manuale che adotti e il risultato finale, infine un terzo foglio (privo di formule) in cui incolli il primo foglio e riporti il risultato da ottenere.

p.s.
Alla fine hai preparato delle tabelle per ciascun passaggio che puoi ripetere tranquillamente n.volte con il copia e incolla, basta usare correttamente il dollaro..tu lo hai impiegato esclusivamente come doppio dollaro. Secondo me hai già trovato la risposta
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
ildubbio
Messaggi: 3
Iscritto il: martedì 13 marzo 2018, 11:49

Re: ripetere un calcolo fino ad una certa condizione

Messaggio da ildubbio »

unlucky83 ha scritto:
io devo ottenere una divisione per fasce di consumi dell'acqua.
ildubbio ha scritto: Quindi 36,81 è giusto o sbagliato?

p.s.
Alla fine hai preparato delle tabelle per ciascun passaggio che puoi ripetere tranquillamente n.volte con il copia e incolla, basta usare correttamente il dollaro..tu lo hai impiegato esclusivamente come doppio dollaro. Secondo me hai già trovato la risposta
36,81 è giusto ma solo per l'esempio indicato. Ma non è una costante. E l'esito del calcolo e delle verifiche fatte n volte.
Dove n non è definito
Purtroppo scrivere quello che vorrei ottenere non è semplice.
Diciamo che vorrei evitare ogni volta di dover fare n copia incolla, come suggerisci tu.
OpenOffice 3.1 su Windows Vista
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: ripetere un calcolo fino ad una certa condizione

Messaggio da unlucky83 »

Il calcolo viene ripetuto al massimo un numero di volte pari alle voci dell'elenco. L'elenco è fisso o è variabile?
Quello che potresti fare è preparare un foglio con già le formule inserite senza bisogno di copiare e incollare continuamente le tabelle. Inoltre se ciò non fosse evitabile dato che l'elenco potrebbe essere estremamente lungo e imprevedibile, potresti adottare formule matriciali e un layout opportuno per renderti la vita più semplice.
Se l'elenco fosse lunghissimo, quindi N esageratamente grande, si potrebbe pensare di ricorrere alle macro.

Quello che dovresti fare è cercare di spiegarci tutto e non dare nulla per scontato. Visto che esistono anche la seconda e la terza fascia ho il sospetto che la parte "seccante" del tuo lavoro di verifica dipenda anche dal fatto che dovrai fare controlli anche per queste fasce, o probabilmente ricavare i valori di soglia di fascia 2 e 3 specifici per i consumi indicati.

Se il quadro non è chiaro non è facile capire qual'è la soluzione migliore per te.
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: ripetere un calcolo fino ad una certa condizione

Messaggio da unlucky83 »

Allego comunque file.
Foglio 1 è il tuo foglio con le formule migliorate ( utilizzo corretto del dollaro per bloccare riferimenti di righe e/o riferimenti colonne).
Foglio 2 è una versione che utilizza le formule matriciali e nel dubbio che l'elenco fosse di lunghezza indeterminata, ho preferito assegnare il nome "Elenco1" all'area celle.
Attendo chiarimenti per le altre fasce.
Allegati
esempio5.ods
(17.87 KiB) Scaricato 136 volte
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Rispondi