risultato in base ad intervallo valori in LO

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
Alek
Messaggi: 25
Iscritto il: venerdì 4 gennaio 2019, 22:33

risultato in base ad intervallo valori in LO

Messaggio da Alek »

Salve ragazzi,

per questa formula ho cercato nel forum e ho trovato qualcosa che si avvicina ma non mi funziona, riporto qui la mia esigenza per vedere cosa serve effettivamente.
Nel foglio test che allego si avrà un valore da inserire manualmente, in base alla tabella D1:E4 sono riportati i valori di riferimento e risultato in cui cercare quello giusto.
Es: impostando il valore 3 in A2 dovrei avere come risultato in B2 il valore €7, come risultato per l'intervallo valori tra 2 e 5, e così via.
Grazie per il vostro aiuto.
Allegati
test prezzo-peso.ods
(8.7 KiB) Scaricato 105 volte
Libreoffice 6 su Windows 10 64Bit
Avatar utente
lucky63
Volontario assiduo
Volontario assiduo
Messaggi: 2996
Iscritto il: martedì 18 maggio 2010, 17:01

Re: risultato in base ad intervallo valori in LO

Messaggio da lucky63 »

.
Una possibile soluzione utilizzando una colonna di appoggio per trovare il riscontro (x).
Test - TrovaPrezzoCorrispondenteFinoAiChiliDelPesoIndicato.png
Allego il file di esempio con ulteriori indicazioni al suo interno.
.
Allegati
Test - TrovaPrezzoCorrispondenteFinoAiChiliDelPesoIndicato.ods
(17.1 KiB) Scaricato 105 volte
Alek
Messaggi: 25
Iscritto il: venerdì 4 gennaio 2019, 22:33

Re: risultato in base ad intervallo valori in LO

Messaggio da Alek »

Grazie per il suggerimento. Beh si, così funziona ma con la colonna d'appoggio C che fa riferimento al valore in A2. però avrò poi un valore in A3, A4 e così via, con i prezzi, presi sempre dalla tabella, che dovranno apparire in B3, B4, ecc. Quindi come si adatta?
Libreoffice 6 su Windows 10 64Bit
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: risultato in base ad intervallo valori in LO

Messaggio da gioh66 »

Buondì, potresti modificare la tabella di riferimento aggiungendo una colonna in cui impostare il limite minimo, poi con un CERCA.VERT ricavare i prezzi in base al peso.
In B2 da trascinare in basso metti

Codice: Seleziona tutto

=CERCA.VERT(A2;$D$2:$F$4;3;1)
Riallego il tuo file con la modifica
Allegati
test prezzo-peso(1).ods
(9.42 KiB) Scaricato 89 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
lucky63
Volontario assiduo
Volontario assiduo
Messaggi: 2996
Iscritto il: martedì 18 maggio 2010, 17:01

Re: risultato in base ad intervallo valori in LO

Messaggio da lucky63 »

.
Soluzione senza usare una colonna di appoggio.
Necessario ordinare la tabella Pesi dal più grande al più Piccolo.
Test - TrovaPrezzoCorrispondenteFinoAiChiliDelPesoIndicato.png
In relazione all'esempio di cui all'immagine, in cella B2è inserita la seguente formula:

Codice: Seleziona tutto

=SE(A2="";"";INDICE($D$1:$E20;CONFRONTA(A2;$D$1:$D$20;-1 );2))
Cella B2 si può ricopiare in basso quanto serve e si adatta automaticamente all'esigenza-.
Allego file di cui sopra.
.
Allegati
Test - TrovaPrezzoCorrispondenteFinoAiChiliDelPesoIndicato.ods
(14.33 KiB) Scaricato 89 volte
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: risultato in base ad intervallo valori in LO

Messaggio da gioh66 »

Oltre all'ottimo suggerimento di lucky63, se le variabile non sono molte, potrebbe essere quella di usare il CERCA.VERT con una costante di matrice. In B2 da trascinare in basso

Codice: Seleziona tutto

=CERCA.VERT(A2;{0.5;2,1.7;5,1.9};2;1)
In questo caso la tabellina dell'intervallo D1:E5 è solo per riferimento e non serve alla formula.
Allegati
test prezzo-peso(2).ods
(9.97 KiB) Scaricato 97 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
Alek
Messaggi: 25
Iscritto il: venerdì 4 gennaio 2019, 22:33

Re: risultato in base ad intervallo valori in LO

Messaggio da Alek »

grazie, siete davvero bravissimi. per praticità credo che adotterò la soluzione con l'aggiunta della colonna "da", in modo che qualora cambiassero i valori aggiorno la tabella e ho tutto a posto velocemente.
però la soluzione con la matrice di gioh66 mi incuriosisce moltissimo, ho provato a ragionarci ma non capisco com'è costruita la formula nel campo matrice, da cosa vengono fuori queli valori?! :shock:
Libreoffice 6 su Windows 10 64Bit
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: risultato in base ad intervallo valori in LO

Messaggio da gioh66 »

Ciao la costante di matrice crea una tabella "al volo" su cui far lavorare il cerca verticale. Se guardi bene i valori ti rendi conto che sono gli stessi della tabella d'appoggio che ti avevo suggerito nell'altro messaggio. Nello specifico sono quelli della prima e della terza colonna, la seconda in realtà non servirebbe nemmeno nella colonna d'appoggio. È più che altro utile per visualizzare i limiti massimi.
La punteggiatura (.) e (;) sono rispettivamente i divisori di riga e colonna.
L'uso della costante di matrice può essere comoda proprio per non dover fare una tabella d'appoggio se non strettamente necessaria. Ovviamente la cosa è funzionale se i valori su cui fare il confronto non sono molti e sono sempre gli stessi.
Se come tu dici invece, che i valori possono variare allora è più comoda la tabella d'appoggio, in quanto ti basta variare questi e anche i risultati si adattano automaticamente.
...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
Eramad
Volontario
Volontario
Messaggi: 278
Iscritto il: martedì 10 aprile 2018, 14:56
Località: Pistoia

Re: risultato in base ad intervallo valori in LO

Messaggio da Eramad »

Giusto per eventuali future ricerche, specifico che la soluzione di @gioh66 con la matrice direttamente nella formula, non funziona in OpenOffice ma solo il LibreOffice.

So che magari era ovvio visto che nel titolo della discussione si specifica che si sta parlando di LibreOffice...ma repetita iuvant ;)
Apache OpenOffice 4.1.5 su Windows 10

Se hai risolto il problema, ricordati di aggiungere [RISOLTO]: viewtopic.php?f=9&t=5661
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1748
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: risultato in base ad intervallo valori in LO

Messaggio da gioh66 »

Ciao @Eramad non funziona scritta così, ma solo perchè libreoffice usa il ";" come separatore di colonna e "|" come separatore di riga. Per tanto se modifichi la formula come sotto funziona anche su calc di AOO.

Codice: Seleziona tutto

=CERCA.VERT(A2;{0;5|2,1;7|5,1;9};2;1)
Ps.: nel mio messaggio precedente
viewtopic.php?f=9&t=9624&p=53288#p53280
mi sono accorto di aver scritto un'inesattezza. "." è il separatore di colonna e ";" il separatore di riga.
...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
Alek
Messaggi: 25
Iscritto il: venerdì 4 gennaio 2019, 22:33

Re: risultato in base ad intervallo valori in LO

Messaggio da Alek »

grazie 1000! gentilissimi! :bravo:
Libreoffice 6 su Windows 10 64Bit
Rispondi