Trasformazione dati



  • Trasformazione dati
    di Antonio 55 data: 03/12/2010

    Ciao a tutti

    in un foglio di excell vorrei poter inserire in una cella (a5) un valore e automaticamente in un'altra cella (b5) visionarlo modificato seguendo il seguente criterio:
    quando a5 = x,1 b5 = x+
    quando a5 = x,2 b5 = x+
    quando a5 = x,3 b5 = x+
    quando a5 = x,4 b5 = x1/2
    quando a5 = x,5 b5 = x1/2
    quando a5 = x,6 b5 = x1/2
    quando a5 = x,7 b5 = y -
    quando a5 = x,8 b5 = y -
    quando a5 = x,9 b5 = y -

    dove x è compreso tra 1 e 9 e y=x+1

    esempio:

    a5= 5,7 b5 =6-
    a5= 4,3 b5 =4+
    a5= 7,5 b5 =71/2

    ho provato a vedere tra le funzioni fx e la formattazione condizionale ma non sono riuscito ad ottenere ciò che mi occorre.

    grazie, a presto

    antonio



  • di Locate (utente non iscritto) data: 03/12/2010

    Ciao antonio
    mi sembra che questo problema tu lo abbia gia' posto e non riesco a capire come mai lo riproponi?? comunque ti riposto la funzione da mettere in b5 con una variante alla prima che parte da 0 a 99
    -----------------
    =sinistra(se(valore(destra(a5))>6;se(resto(a5;1)=0;a5;a5+1);a5);se(a5>9,6;2;1))&se(resto(a5;1)=0;"";se(valore(destra(a5))>6;"-";se(valore(destra(a5))<4;"+";"1/2")))
    ----------------------
    ti allego anche il mio file di prova che ho recuperato in extremis
    ciao da locate
    ps fai sapere se ai problemi o ai risolto

     
    =SINISTRA(SE(VALORE(DESTRA(A5))>6;SE(RESTO(A5;1)=0;A5;A5+1);A5);SE(A5>9,6;2;1))&SE(RESTO(A5;1)=0;"";SE(VALORE(DESTRA(A5))>6;"-";SE(VALORE(DESTRA(A5))<4;"+";"1/2")))



  • di Locate (utente non iscritto) data: 03/12/2010

    Riciao
    ti ho allegato quella di prova di a1-b1 ti riallego quella di a5-b5
    --------
    =sinistra(se(valore(destra(a5))>6;se(resto(a5;1)=0;a5;a5+1);a5);se(a5>9,6;2;1))&se(resto(a5;1)=0;"";se(valore(destra(a5))>6;"-";se(valore(destra(a5))<4;"+";"1/2")))
    ------
    riciao
     
    =SINISTRA(SE(VALORE(DESTRA(A5))>6;SE(RESTO(A5;1)=0;A5;A5+1);A5);SE(A5>9,6;2;1))&SE(RESTO(A5;1)=0;"";SE(VALORE(DESTRA(A5))>6;"-";SE(VALORE(DESTRA(A5))<4;"+";"1/2")))



  • di Antonio 55 data: 03/12/2010

    Ciao a tutti

    da un altro forum, (locate) mi hanno suggerito la seguente formula

    che funziona benissimo se inserisco manualmente i dati nella cella di riferimento.

    quando la cella di riferimento, ha una formula (somma o media) il valore analizzato non sempre corrisponde esattamente ai parametri della formula.


    come mai?
    potete aiutarmi?

    grazie tantissimo

    antonio

     
    =sinistra(se(valore(destra(a5))>6;se(resto(a5;1)=0;a5;a5+1);a5);se(a5>9,6;2;1))&se(resto(a5;1)=0;"";se(valore(destra(a5))>6;"-";se(valore(destra(a5))<4;"+";"1/2"))) 



  • di Antonio 55 data: 03/12/2010

    Scusa, locate, ma non riuscivo ad inviare la seconda parte del messaggio.
    ho inserito la stessa cosa su questo forum, perché nell’altro non c’erano comunicazioni a seguito del problema riscontrato.
    grazie di cuore dell’aiuto, a presto
    antonio



  • di Locate (utente non iscritto) data: 03/12/2010

    Ciao antonio

    tu scrivi,, quando la cella di riferimento, ha una formula (somma o media) il valore analizzato non sempre corrisponde esattamente ai parametri della formula.
    il problema e' semplice da spiegare
    la funzione somma() o media() per il suo calcolo a bisogno di valori e non di stringhe quello che tu ai chiesto era di mettere un + o - o 1/2 questi se aggiunti a numeri ritorna come stringa e non come valore quindi non calcolabili da somma() o media(), quindi riepilogando il 6+ 61/2 7- non sono calcolabili, mentre rientrano nei calcoli 6 6,1 6,2 6,3 6,4 6,5 6,6 6,7 6,8 6,9 7 ecc. ecc. essendo questi valori e non stringhe.
    quindi riepilogando questi somma() e media() lo potrai fare in colonna a:a e non sui dati della b:b
    spero di averti spiegato e fatto capire il meccanismo delle funzioni
    ciao da locate




  • di Locate (utente non iscritto) data: 03/12/2010

    Ciao antonio
    rileggendo il tuo post e visto l'aggiunta che hi fatto mentre stavo rispondendo ho capito e forse mi sbaglio che tu ai in a5 o la funzione somma() o media() e quindi in b5 alle volte i valori sballano, provero' a fare una verifica oggi nel frattempo non puoi allegare un tuo file con dati non sensibili per vedere dove il prplema in realta'
    riciao da locate
    ps mi puoi dire che forum era dove avevo gia' posto tale risposta che vedro la tua risposta completa



  • di Locate (utente non iscritto) data: 03/12/2010

    Ciao antonio
    trovato il problema al tuo caso, caso analogo per un altro post riguardante a numeri decimali di valutazione se uguali,
    spiegandoti la cosa excel facendo le somme in binario riporta dopo la virgola un valore,ess 7,00000000000000100, alla 4 fino alla 16 che non si vede ma la funzione che ti ho passato lo fa quindi nella tua funzione somma() o media devi inserirla in un'altra funzione arrotonda()vedi esempio che ti passo di prova come va scritto
    -----
    a5=arrotonda(somma(tua somma);1)
    a5=arrotonda(media(tua media);1)
    -----------
    ti riallego il file 2 di prova
    -----------



  • di Antonio 55 data: 03/12/2010

    Grazie ,locate, per la spiegazione, ma se ho capito bene, tu per cella di riferimento intendi quella in cui è inserita la formula, io intendevo dire quella in cui viene inserito il primo il dato da elaborare
    cerco di spiegarmi meglio:
    a5 cella in cui inserisco dato da elaborare (5,6)
    b5 cella in cui inserisco la formula che mi darà la conversione (in 5 ½)
    (fin qui ok)
    quando il dato inserito in a5, anziché manualmente, deriva da una formula “media(a1:a4)”
    in b5 non sempre è quello desiderato.
    ciao




  • di Locate (utente non iscritto) data: 03/12/2010

    Ciao antonio
    ci stiamo accavallando con domande e risposte, come vedi nel post prima del tua ti ho gia dato la funzione per questo problema in quanto avevo gia' capito il punto dell'errore che none' un errore ma un calcolo in binario, fai una prova per farti capire questo
    in a1 scrivi =3,3-3 in b1=8,3-3 in c1 =se(a1=b1;"vero";"falso") vedrai che ti ritorna falso ma a vista tu avrai in a1=0.3 e in b1=0,3 pero se vai nella proprieta della cella e la posti a 20 dopo la virgola vedrai che i valori non sono uguali quindi per ovviare a questo su usa la funzione arrotonda() in a1 e b1
    ----------------
    0,3 0,3 falso
    0,3 0,3 vero arrotonda()
    ----------
    ciao da locate



  • di Antonio 55 data: 03/12/2010

    Ciao, locate
    ho provato la tua nuova formula e sembra che adesso tutto funzioni bene, ti darò conferma certa prossimamente.
    il forum precedente era: excel e gli applicativi di office/ trasformazione dati.
    ti invio fogli di excel con lo schema da me adottato se nell’occasione hai qualche altro suggerimento o “stravolgimento” sarò ben lieto di adottarlo.
    grazie di tutto,a presto
    antonio



  • di Antonio 55 data: 03/12/2010

    Ciao, locate
    ho letto e seguito le tue indicazioni che sono molto chiare.
    ho comunque provato sul foglio il tuo esempio e lì è ancora più esaustivo.
    nota: nell’esempio indichi “ in b1=8,3-3” ma sicuramente volevi dire “ in b1=8,3-8” . (ho capito bene?) se è così mi torna.
    ho aperto un'altra discussione su “imposta pagina”.
    non è che sapresti suggerirmi come posso fare per cambiare colore alle scritte “intestazione” e “ pie’di pagina “ ?
    tieni presente che lavoro con excel 2000 e che da imposta pagina (sia dai file menù che da stampa) posso scegliere tipo, stile, dimensione ma non il colore.
    grazie, a presto
    antonio



  • di Antonio 55 data: 03/12/2010

    Ciao, locate
    ho letto e seguito le tue indicazioni che sono molto chiare.
    ho comunque provato sul foglio il tuo esempio e lì è ancora più esaustivo.
    nota: nell’esempio indichi “ in b1=8,3-3” ma sicuramente volevi dire “ in b1=8,3-8” . (ho capito bene?) se è così mi torna.
    ho aperto un'altra discussione su “imposta pagina”.
    non è che sapresti suggerirmi come posso fare per cambiare colore alle scritte “intestazione” e “ pie’di pagina “ ?
    tieni presente che lavoro con excel 2000 e che da imposta pagina (sia dai file menù che da stampa) posso scegliere tipo, stile, dimensione ma non il colore.
    grazie, a presto
    antonio



  • di Locate (utente non iscritto) data: 04/12/2010

    Ciao
    nella fretta ho scritto b1=8,3-3 ma era per spiegarti b1=8,3-8 =0,3 come ai visto se ai portato le due celle a 20 decimali avrai notato che in a1 era 0,30000000000000000000 e in b1 0,30000000000000100000
    come fa quell'uno sconbussola tutti i calcoli e anche i piu' semplici,
    un consiglio se ti capita di fare conti ess iva o altro arrotonda sempre a 4 decimali perche' per l'agenzia delle entrate calcolando in questo modo non avrai problemi alla fine sui conti
    ciao da locate
    ps per l'altro ti ho gia passato una dritta a te valutare la cosa