View Full Version : Somma in Excel
francy.fabio
22-03-2002, 20:15
Buongiorno a grazie per interessarvi al mio problema: vorrei calcolare la somma di due celle in Excel con il risultato in una terza cella, e qui nulla di difficile, il mio problema è una particolarità. Per meglio spoegarmi faccio un esempio: mettiamo che in C1 vorrei il risultato della somma di A1 e B1, bene faccio la sommatoria in C1 e seleziono A1 e B1, solo che così facendo se le celle A1 e B1 sono vuote Excel in C1 mi inserisce automaticamente uno zero, quello che mi interessa è che in C1 mi faccia la somma di A1 e B1 ma se queste sono vuote anche C1 rimanga vuote e se in esse scrivo i numeri allora mi faccia la somma. Notate che le proprietà delle celle saranno "numero" con due decimali. Qualcuno può aiutarmi? Grazie e tanti saluti.
Non ho capito a fondo il quesito........comunque, se a A1 e B1 dai il formato numero e poi nel formato celle gli dici "Numero e due decimali" abbiamo risolto il primo quesito..
A C1 gli dici invece "Contabilità" decimali 2 e simbolo nessuno. in C1 inserirà solo un trattino....
Diversamente bisogna compilare una piccola macro....
Facci sapere....
Bye...:cool: :cool:
Nella cella del risultato devi impostare il formato personalizzato e scrivere #
Se imposti il separatore delle migliaia il formato dovrà essere #.###
Bye
francy.fabio
23-03-2002, 13:50
La cosa che più mi serve è avere C! vuota se A1 e B1 sono vuote ma se ci scrivo un numero mi calcoli il risultato di queste due celle. Grazie per le risposte...
Per cella vuota intendi con niente visualizzato?
Ho provato come ti ho detto prima e funziona (Office 2000)
Il segno # significa "elimina lo zero non significativo in questa posizione"
Infatti il formato base assunto per campi con separatore delle migliaia è #.##0 , che significa: "elimina tutti gli zeri non significativi escluso l'ultimo"
Se imposti (personalizzato) #.### te li eliminerà tutti e non visualizzerà niente nella casella, qualora il valore sia nullo
Per MM.....
Non ci siamo........il suo problema sono i due decimali.....
Con il tuo metodo.....la cosa non funziona.......il totale viene arrotondato per eccesso........hummm...
Bye....:cool: :cool:
Forse io ho capito tutt'altra cosa, è possibile.....
Comunque su due celle con 2 decimali (particolare che mi era sfuggito), se faccio la somma in una terza (presumibilmente con 2 decimali) non vedo cosa ci sia da arrotondare
Se invece è intera, l'arrotondamento standard è quello classico "a 5"
Se sono vuorte non cambia niente, visto che 0 + 0 = 0 (con qualsiasi numero di decimali
Il formato, in questo caso diventa semplicemente #.###,##
L'unico inconveniente è che Excel ci mette, purtroppo, la virgola
La soluzione del trattino è effettivamente un'alternativa valida
Un'altra soluzione è quella di utilizzare la funzione "SE":
=SE(A1+B1>0;A1+B1;" ")
in questo caso senza maschere particolari, ma con la normale definizione di numero con 2 decimali e separatore delle migliaia
MM=Forse io ho capito tutt'altra cosa, è possibile.......
Brumma=No..........hai solamente letto male........
MM=Comunque su due celle con 2 decimali (particolare che mi era sfuggito), se faccio la somma in una terza (presumibilmente con 2 decimali) non vedo cosa ci sia da arrotondare.
Brumma=Semplicemente......con (personalizzato) #.### in C1 Excel arrotonda per eccesso......almeno officeXP....
MM=Un'altra soluzione è quella di utilizzare la funzione "SE":
=SE(A1+B1>0;A1+B1;" ")
Ecco........questa è una soluzione alternativa "valida".
Bye....:cool: :cool:
Scusa, non voglio fare polemica, anzi.... se c'è qualcosa da imparare sono pronto ad ascoltare con attenzione
Mi pare comunque che il formato proposto nella prima risposta, non teneva conto dei decimali (che non avevo notato, come detto)
Il formato proposto (quello errato) il personalizzato esclude comunque l'impostazione numerica dei decimali, impostando i quali (da "numero") si disattiva automaticamente
Il formato corretto (dopo) non prevede alcun arrotondamento (perché non esiste su campi delle stesse dimensioni)
Se Office XP arrotonda sempre per eccesso, mi pare sia una grande...... diciamo idiozia...... (del programma, non tua ovviamente)
Non lo dire a me.........che tutt'ora ne imparo una o due al giorno..
Ma resta un fatto.........discutibile se vuoi.....ma con il personalizzato #.###........ExcelXp risponde così.....come riscontro dai un'occhio all'allegato....
D'altro canto che excel abbia sempre qualche strana reazione, non è perlomeno per me che lo uso dalla versione 3, una sospresa.....
Ma credo che tutto ciò lo sappia anche tu.......se poi vogliamo parlare di VBA.........bè allora le sorprese saranno parecchie.....
E' pur vero che nella compilazione di qualsivoglia sistema di programma......debba sempre essere lasciato largo spazio alla fantasia ed all'estro del programmatore......ma spesso in questo campo Microsoft esagera......
Con simpatia........brumma
Bye...:cool: :cool:
Ho tirato un sospiro di sollievo... :)
In effetti quello che vedo ha ragione d'essere (meno male)
Impostando in quel modo (come inizialmente avevo suggerito io, sbagliando), si esegue la somma di due campi con 2 decimali in uno intero (la maschera di editazione infatti lo definisce automaticamente come campo con 0 decimali)
Per utilizzare la funzione di editazione correttamente, sempre seguendo la logica da me suggerita, dovremmo impostare la maschera come #.###,## ed il campo verrebbe automaticamente definito con 2 decimali, con nessun arrotondamento finale (peccato per la virgola che viene comunque riportata)
Il fatto che venga arrotondato a 5 è normale in quanto i decimali, assumendo il valore 80, vanno a determinare l'aumento dell'ultima cifra intera
Se la somma dei decimali fosse 49 o inferiore, il risultato sarebbe stato l'intero con troncamento dei decimali risultanti, quindi con arrotondamento per difetto
OK, credo che ci siamo capiti
Bye
Spero solo che francy ci abbia capito qualcosa.... :)
francy.fabio
24-03-2002, 09:14
Grazie a Brumma e anche a MM. Molte risposte che mi avete dato sono buonissime, per esempio quella utilizzando IF. Il mio problema principali comuqnue era quello di non visualizzare nulla nella cella che conteneva il risultato delle altre due se queste due non contenevano niente. Ho risolto così: con la formattazione condizionale inserende "se <il valore della cella> è <uguale> a 0 allora il formato del carattere è bianco" quindi esendo bianco non si vedono i zeri che Excell assegnava se le due celle erano vuote. Scusate ma io mi ero dimenticato di dirvi che si trattava di Excel 97, utilizzando sulle proprietà della cella #.## il risultato non dava i decimali mentre me li dava se al posto del punto mettevo una virgola #,## solo che la cella era quasi bianca infatti inseriva nella cella del risultato una virgola. Grazie a tutti quannti mi hanno risposto e tanti saluti
Meno male sei riuscito a capirci qualcosa :)
Stavo perdendo il filo pure io :D
Era un po' di giorni che ci pensavo: mi pareva ci fosse una soluzione più semplice, ma non riuscivo a ricordare (con le centinaia di opzioni che ci sono su Excel)
Appena avuta l'occasione mi sono messo a spulciare: è stata dura, MA L'HO TROVATA!
E' una cosa assolutamente banale: dal menu strumenti > Opzioni > togliere la spunta alla casella "Zeri" che è abilitata di default
Meglio tardi che mai ;)
E meno male che qualcuno ci pensa.......
Davvero elementare........confesso, non la ricordavo proprio....
Grazie..........per averci perso del tempo.....
Bye....;) :cool:
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.