buona sera,

leggo con interesse la mail di Carlo Strata. Confermo che la funzione
somma agisce correttamente senza conversioni o altri impicci sia se
scrivo =somma(a1;a3) sia che scriva =somma(a1;a2;a3). Per contro
=a1+a2+a3 se trova un campo definito numero non controlla nulla. La
prova di questo è basta aggiungere una quarta cella e definirla testo -
ovvero @ - e lì immettere un numero la scrittura =a1+a2+a3+a4 dà come
risultato la somma delle tre prime celle, definite numeriche. Quindi
l'ipotesi che venga eseguita una conversione da stringa a numero non
appare credibile. In altre parole la funzione somma e la somma manuale
usano controlli diversi. Rimango dell'avviso che che sia un bug di calc.

Per quanto riguarda il punto d) la prova suggerita di importazione i
dati vengono trasformati in testo e la loro somma con la funzione dà 0.
Quello che scrive al punto vale solo se creo un file realmente csv o txt
e poi lo importo, come ho verificato. Il suggerimento di selezionare
inglese US risolve il problema del punto e la funzione somma da un
valore corretto.

La soluzione suggerita di trovare ' ed eliminarli non funziona per il
banale motivo che essendo il campo numerico non riconosce l'apice '

Buona notte a tutti

Il 12/11/21 22:33, Carlo Strata (tiscali.it) ha scritto:
> Ciao a Tutti,
>
> ho letto le tre vostre mail. Alcune mie considerazioni:
>
> a) non mi meraviglia che la SOMMA() dell'intervallo sommi solo le
> celle effettivamente numeriche e non quelle formattate come numeriche
> che non contengono un numero perché la stringa che sembrerebbe
> rappresentarlo è preceduta da un ' che comporta che il foglio veda
> quel valore come testo ignorando quello che per gli occhi umani
> potrebbe rappresentare; direi che è corretto perché '123 potrebbe
> essere il nome di un marchio e non il numero centoventitre,
> soprattutto perché quello (A1:A3, ad esempio) è un unico parametro
> della funzione SOMMA();
>
> b) la scrittura invece di =A1+A2+A3 comporta la valutazione di tre
> celle (parametri o variabili) per poi eseguirne i calcoli indicati,
> probabilmente sulle singole celle un numero puro o un numero come
> stringa vengono visti sempre come numero perché evidentemente ne viene
> tentata sempre la conversione da testo a numero (similmente alle
> funzioni VALORE() o VALORENUMERO()); questo comportamento potrebbe
> essere un'eredità storica voluta (!) di tutti i fogli elettronici
> (LO/OO Calc, Microsoft Excel, Google Fogli, Gnumeric, ...) dai tempi
> di Lotus 123... ;-)
>
> c) potrebbe essere una interessante conferma del tentativo di
> conversione del parametro costituito da una singola cella a numero da
> parte del foglio elettronico provare a valutare l'espressione
> =SOMMA(A1;A2;A3) che è assurda ed inefficiente per celle adiacenti (e
> che considero errore da parte dei miei Studenti di scuola superiore);
>
> d) non serve cambiare locale (IT-CH, ad esempio, come scrivete) per
> importare bene un csv (ad esempio gli OpenData degli enti pubblici
> italiani) per leggere correttamente un numero con il punto come
> separatore decimale, ma nella potente finestra che si apre prima
> dell'importazione finale di un file .csv, che mostra anche
> un'anteprima dell'importazione dei dati, basta scegliere per le
> colonne che contengono i tipo di dato con il punto decimale il tipo di
> colonna "Inglese US". Fate subito una prova selezionando
> esclusivamente da questa mail queste successive quattro righe:
> 25.3
> 12.3
> 12.8
> 24.9
>
> ed incollandole in una cella Calc, vi si aprirà subito la schermata di
> importazione file .csv (con una sola colonna, ma non importa).
> Cliccate sulla parola "standard" in testa all'anteprima della colonna
> e vedrete che si accenderà anche il campo "Tipo colonna" che sarà
> impostato a standard, cliccate standard e scegliete appunto "Inglese
> US" e poi su OK ed il gioco è fatto.
>
> e) discorso diverso se i numeri sono già scritti con un apice
> anteposto nel csv stesso e voi volete importare i dati come numeri...
> Ad esempio:
> '25.3
> '12.3
> '12.8
> '24.9
>
> Un metodo è:
> e.1) trova ' e sostituisci con nulla relativamente alla colonna
> e.2) seleziono la colonna --> tasto destro copia --> taste destro
> incolla speciale --> Testo non formattato --> si apre la finestra di
> importazione file .csv e mi comporto come il punto d).
>
> Spero di avervi potuto aiutare.
>
> Notte a tutti,
>
> Carlo
>
> Il 12/11/21 10:22, Alberto Benedetto ha scritto:
>> Buongiorno,
>> fatto prova anche con libreoffice 7.3.2.1 sotto opensuse e si
>> presenta lo stesso curioso problema che credo si possa definire bug.
>> C'è anche da notare che la funzione VAL.TESTO riferita alla cella con
>> il numero con l'apice restituisce correttamente VERO, e questo è
>> corretto anche se nel formato della cella è definita la categoria
>> "Numero".
>> In generale il formato della cella non può modificarne il "tipo" e
>> forse non dovrebbe neanche permettere di selezionarlo, per evitare
>> interpretazioni ambigue delle azioni che si vogliono fare.
>> Per quanto riguarda le importazioni numeriche da un file csv io ho
>> adottato questo semplice stratagemma.
>> Se nel file csv i numeri decimali hanno come separatore il punto,
>> ovvero derivano da un'esportazione strumentale o più
>> "internazionale", per evitare il cambio di interpretazione da numero
>> a testo, visto il "locale" di default in libreoffice che è "italiano
>> - italia" dove il separatore dei decimali è la virgola, basta
>> impostare nelle opzioni-impostazione della lingua-lingua, il formato
>> impostazione locale italiano-svizzera, dove il separatore dei
>> decimali è il punto.
>> Una volta salvato poi il file in ods, il numero sarà poi sempre
>> interpretato correttamente anche al variare delle impostazioni della
>> lingua.
>> Saluti
>>
>> Alberto Benedetto
>>
>> Da: "gianpaolo_marcolongo" <gianpaolo_marcolo...@newwhitebear.net>
>> A: "libreoffice users" <users@it.libreoffice.org>
>> Inviato: Giovedì, 11 novembre 2021 17:16:14
>> Oggetto: Re: [it-users] Addizione e somma
>>
>> Buongiorno a tutti,
>>
>> fatto qualche prova. Sistema Ubuntu 20.04lts, LO 7.3dev. Creata un
>> foglio di calc valore in a2 con apice. la funzione SOMMA dà il valore
>> corretto. Solo la somma di a1 e a3, scartando a2, numero preceduto da '.
>> Se faccio =a1+a2+a3 viene sommato anche a2, come Magistrelli ha scritto.
>> Se controllo formatta cella, tasto di destra, su A2 per calc è un
>> numero. Questo potrebbe spiegare l'anomalia della somma diretta che non
>> riconosce come testo a2. A questo punto aggiunto a4, formattatato come
>> @, la funzione somma continua a scartare i valori non numeri, a2 e a4,
>> ma la somma =a1+a2+a3+a4 dà errore in quanto un valore non è numerico,
>> appunto A4, e propone la correzione automatica. Accettando la correzione
>> il totale tiene conto di a2 e a4 in modo erroneo.
>>
>> In conclusione la funzione tratta correttamente solo i valori numerici
>> definiti come tali, la somma diretta no. Credo che sia un bug meritevole
>> di essere segnalato in quanto la somma diretta dovrebbe segnalare la
>> presenza di valori di testo nella formula.
>>
>> Il 11/11/21 15:50, Carlo Magistrelli ha scritto:
>>> Ciao.
>>> *LibreOffice Calc su Ubuntu 20.04, versione 6.4.7.2 (ma anche altri
>>> computer, SO e versioni più aggiornate).*
>>>
>>> Nel range A1:A3 ci sono tre valori.
>>> Apparentemente sono numeri, ma uno di essi (A2) in realtà è un testo
>>> (cioè
>>> un numero preceduto da un segno di apostrofo).
>>> Se in A4 immetto la formula =somma(A1:A3) il "falso" numero non viene
>>> calcolato;
>>> se in A5 immetto =A1+A2+A3 la somma invece tiene conto anche del
>>> "falso"
>>> numero.
>>>
>>> Per essere più precisi il "falso" numero era stato formattato come
>>> testo
>>> (codice formato @) ed allineato a destra; anche selezionandolo,
>>> nella barra
>>> della formula NON si legge l'apostrofo.
>>> Per essere ancora più precisi, il tutto deriva dalla conversione di
>>> un file
>>> .csv ed i valori sono molte centinaia.
>>>
>>> Ho scoperto che si può alzare l'opzione "Evidenzia valori (ctrl+F8)" e
>>> vedere che il "falso" numero è nero, mentre i "veri" numeri sono blu e
>>> certamente, d'ora in poi, la terrò attivata.
>>>
>>> Però mi chiedo che logica ci sia dietro una simile differenza di
>>> comportamento fra semplice addizione e funzione somma. Qualche idea?
>>>
>>> Grazie per l'attenzione.
>>>
>>> Carlo
>>>
>

-- 
Come cancellarsi: E-mail users+unsubscr...@it.libreoffice.org
Problemi? https://it.libreoffice.org/supporto/mailing-lists/come-cancellarsi/
Linee guida per postare + altro: 
https://wiki.documentfoundation.org/Local_Mailing_Lists/it
Archivio della lista: https://listarchives.libreoffice.org/it/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Rispondere a