Usare operatore aritmentico da elenco

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
amax
Messaggi: 99
Iscritto il: mercoledì 7 novembre 2012, 10:59

Usare operatore aritmentico da elenco

Messaggio da amax »

Buongiorno a tutti, sto cercando di creare all'interno di un foglio più complesso una calcolatrice. Mi spiego meglio per non stare a scrivere ogni volta la formula, vorrei creare una cella con elenco di tutti gli operatori (+,-,*,/) e due celle dove inserire i dati.

Quindi A1 (primo fattore), A2 (secondo fattore), B1 (elenco con operatori), A3 (risultato).

Ho provato con questa formula in A3 (ma non funziona)

Codice: Seleziona tutto

(A1&"B1"A2)
dove B1 dovrebbe essere "+" o "-" o "*" ecc
Mi potete aiutare?
Grazie
macOS 14 Sonoma: LibreOffice 24.2.1
patel
Volontario attivo
Volontario attivo
Messaggi: 4020
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Usare operatore aritmentico da elenco

Messaggio da patel »

allega il file
-------------------
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
amax
Messaggi: 99
Iscritto il: mercoledì 7 novembre 2012, 10:59

Re: Usare operatore aritmentico da elenco

Messaggio da amax »

ecco il file
Allegati
calcolo.ods
(7.56 KiB) Scaricato 110 volte
macOS 14 Sonoma: LibreOffice 24.2.1
Gaetanopr
Volontario
Volontario
Messaggi: 3300
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: Usare operatore aritmentico da elenco

Messaggio da Gaetanopr »

Dai un'occhiata a questa discussione viewtopic.php?f=9&t=6034&hilit=invoke
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
patel
Volontario attivo
Volontario attivo
Messaggi: 4020
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Usare operatore aritmentico da elenco

Messaggio da patel »

Non si potrebbe fare usando INDIRETTO ?
-------------------
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
amax
Messaggi: 99
Iscritto il: mercoledì 7 novembre 2012, 10:59

Re: Usare operatore aritmentico da elenco

Messaggio da amax »

No non mi sono spiegato forse, il mio è molto più semplice (forse).
Io vorrei fare semplicemente che nella cella A1 ci sia un valore numerico tipo "2" nella cella A2 "3" nella cella A3 "Il risultato" dato dall'operatore che scelgo dalla cella B1. Quindi se nella cella B1 c'è "+" il risultato sarà "5" se c'è "*" il risultato "6" se "-" sarà "-1" ecc...
macOS 14 Sonoma: LibreOffice 24.2.1
Gaetanopr
Volontario
Volontario
Messaggi: 3300
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: Usare operatore aritmentico da elenco

Messaggio da Gaetanopr »

Ti sei spiegato ma non è semplice come pensi, credo tu non abbia letto tutta la discussione che ti ho postato
patel ha scritto:Non si potrebbe fare usando INDIRETTO ?
Non credo, al massimo creare una funzione personalizzata specificatamente per questo caso che si potrebbe implementare per farla più dinamica tipo questa che allego

Codice: Seleziona tutto

Function Eval(Rng, Op) As Double
Eval = Rng(1, 1)

Select Case Op
Case "+" 
For n = LBound(Rng)+1 To Ubound(Rng)
     Eval = Eval + Rng(n, 1)
Next n
Case "-" 
For n = LBound(Rng)+1 To Ubound(Rng)
     Eval = Eval - Rng(n, 1)
Next n
Case "/" 
For n = LBound(Rng)+1 To Ubound(Rng)
     Eval = Eval / Rng(n, 1)
Next n
Case "*" 
For n = LBound(Rng)+1 To Ubound(Rng)
     Eval = Eval * Rng(n, 1)
Next n
End Select

End Function
Nella cella scrivere così

Codice: Seleziona tutto

=EVAL(A1:A2;B1)
Altrimenti se non vuoi usare una funzione definita puoi usare la funzione SE con 4 casi qualcosa del genere

Codice: Seleziona tutto

=SE(B1="+";A1+A2;SE(B1="-";A1-A2;SE(B1="/";A1/A2;SE(B1="*";A1*A2;""))))
Allegati
amax.ods
(9.27 KiB) Scaricato 108 volte
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
amax
Messaggi: 99
Iscritto il: mercoledì 7 novembre 2012, 10:59

Re: Usare operatore aritmentico da elenco

Messaggio da amax »

Grazie, come al solito quello che pensi sia una "semplice" operazione non è poi tanto semplice.
Forse a questo punto userò il Più.Se anche se leggendo la funzione, mi intriga ma non le ho mai usate, forse è il momento giusto per iniziare.
macOS 14 Sonoma: LibreOffice 24.2.1
Avatar utente
gioh66
Volontario
Volontario
Messaggi: 1745
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Usare operatore aritmentico da elenco

Messaggio da gioh66 »

Buondì! Con una formula si potrebbe fare così: in A1 e A2 i valori con cui fare le operazioni. In B1 un menù a tendina da cui scegliere l'operatore e in A3 la seguente formula

Codice: Seleziona tutto

=SCEGLI(SE(B1="+";1;SE(B1="-";2;SE(B1="/";3;4)));A1+A2;A1-A2;A1/A2;A1*A2)
Allegati
scegli operatore.ods
(7.72 KiB) Scaricato 117 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
gioh66
Volontario
Volontario
Messaggi: 1745
Iscritto il: lunedì 31 luglio 2017, 14:57
Località: Friuli

Re: Usare operatore aritmentico da elenco

Messaggio da gioh66 »

...o anche più semplicemente

Codice: Seleziona tutto

=SE(B1="+";A1+A2;SE(B1="-";A1-A2;SE(B1="*";A1*A2;A1/A2)))
...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
Rispondi