Discussione:
Conversione Numero in Stringa di Testo
(troppo vecchio per rispondere)
Luk
2004-11-10 21:14:22 UTC
Permalink
Ciao a tutti,

inizio in maniera inconsueta, ma permettetemi di ringraziare pubblicamente
Maurizio per la sua incredibile disponibilità!!!
Ci vorrebbero più persone come lui... grazie ancora!!

A parte questo, devo chiedervi di nuovo un aiuto:

Ho la necessità di inserire dei numeri in delle celle, ma dopo queste
dovranno essere esportate fuori dall'excel, quindi ho bisogno di un formato
particolare.
Il formato è una stringa di testo composta secondo quanto segue:

xxx.xxxxxx

Il problema è che il numero da me inserito dovrebbe quindi essere convertito
in questo formato. Vi faccio due esempi:
1) Se io scrivo nella cella 10,4 dovrei ottenere 010.400000
2) Se io scrivo nella cella 3,876 dovrei ottenere 003.876000

...come fare?

Posso a vostro parere personalizzare il formato del contenuto della cella?
o è meglio con una macro che trasformi i numeri inseriti nella stringa che
vorrei?
Che ne pensate?

Grazie ancora per il vostro aiuto...

Luca
Nicola Murruzzu
2004-11-10 22:50:04 UTC
Permalink
Non so se ho capito bene comunque ti ho dedicato 10 minuti.
Cella A1 = scrivi il tuo valore numerico (vedi te se
mettere o meno regole di convalida)
Cella A2 (o anche un'altra, basta che stai attento ai
riferimenti)=SE(TRONCA(A1;0)<10;CONCATENA("00";TRONCA
(A1;0);".");SE(E(TRONCA(A1;0)>=10;TRONCA(A1;0)
<100);CONCATENA("0";TRONCA(A1;0);".");SE(TRONCA(A1;0)
=100;CONCATENA(TRONCA(A1;0);"."))))
Cella B2 (o anche un'altra... basta che stai attento ai
riferimenti) = =FISSO(A1-TRONCA(A1;0);6;VERO)

Cella C2 (o anche un'altra...)=CONCATENA(A2;DESTRA(B2;6))

Il dato da esportare lo prendi dalla cella C2.
Magari con qualche riga di VBA esce lo stesso ma visto che
si può fare con le formule...

Ciao.
Spero sia questo che volevi
Nicola
Luk
2004-11-10 23:27:49 UTC
Permalink
"Nicola Murruzzu" <***@discussions.microsoft.com> ha scritto nel
messaggio news:5b3e01c4c777$9e192460$***@phx.gbl...
Non so se ho capito bene comunque ti ho dedicato 10 minuti.
Cella A1 = scrivi il tuo valore numerico (vedi te se
mettere o meno regole di convalida)
Cella A2 (o anche un'altra, basta che stai attento ai
riferimenti)=SE(TRONCA(A1;0)<10;CONCATENA("00";TRONCA
(A1;0);".");SE(E(TRONCA(A1;0)>=10;TRONCA(A1;0)
<100);CONCATENA("0";TRONCA(A1;0);".");SE(TRONCA(A1;0)
=100;CONCATENA(TRONCA(A1;0);"."))))
Cella B2 (o anche un'altra... basta che stai attento ai
riferimenti) = =FISSO(A1-TRONCA(A1;0);6;VERO)

Cella C2 (o anche un'altra...)=CONCATENA(A2;DESTRA(B2;6))




Ciao Nicola,

il tuo suggerimento è utile, infatti funziona, ma non posso inserire valori
nelle celle vicine.
Dovrei tradurre pertanto tutto in VBA per farne una macro...

ora ci provo, intanto se ci sono suggerimenti....

Grazie ancora!!

Luca
Maurizio Borrelli
2004-11-11 10:47:27 UTC
Permalink
Post by Luk
Ho la necessità di inserire dei numeri in delle celle, ma dopo queste
dovranno essere esportate fuori dall'excel, quindi ho bisogno di un
formato particolare.
xxx.xxxxxx
Il problema è che il numero da me inserito dovrebbe quindi essere
1) Se io scrivo nella cella 10,4 dovrei ottenere 010.400000
2) Se io scrivo nella cella 3,876 dovrei ottenere 003.876000
...come fare?
Posso a vostro parere personalizzare il formato del contenuto della cella?
o è meglio con una macro che trasformi i numeri inseriti nella stringa che
vorrei?
Che ne pensate?
Ciao, Luca.

Uno dei criteri base per una buona gestione dei dati e` la separazione
rigorosa delle tre fasi che la compongono: immissione, elaborazione e
emissione (input/process/output). Excel permette una sintesi di queste tre
fasi, in molti casi una sintesi felicissima, ma e` nostra responsabilita` e
convenienza essere coscienti che di cio` si tratta, una sintesi appunto.

Gli strumenti messici a disposizione da Excel per ottenere tale sintesi
sono orientati principalmente all'emissione a video o in stampa, due mezzi
estremamente affini.

Altra cosa e`, invece l'emissione di file in formati diversi da quello
standard. Siamo in presenza chiaramente di una fase distinta e peculiare
della gestione dei dati. Generalmente noi non dobbiamo preoccuparci d'altro
che della scelta del formato e le funzioni di conversione disponibili
faranno il resto. Non sempre e` cosi` e l'emissione in un formato specifico
richiede un'attenzione particolare. Voler mantenere la sintesi, in questo
caso la confusione, fra dati di input, loro elaborazione e formato di
emissione, quando tale formato non e` agevole o opportuno nella fase di
immissione e rappresentazione a video, e` controproducente e a volte, come
in questo caso, impossibile.

Sparato il pistolotto... con la seguente formula:

=SOSTITUISCI(TESTO(A1;"000,000000");",";".")

ottieni la conversione nel formato di emissione.

(Facci sapere se ed eventualmente come hai risolto. Grazie.)
--
Ciao :o)
Maurizio Borrelli, Microsoft MVP - Office Systems - Access
--------
?SPQR(C)
X
--------
Luk
2004-11-11 23:00:51 UTC
Permalink
Post by Maurizio Borrelli
Post by Luk
Ho la necessità di inserire dei numeri in delle celle, ma dopo queste
dovranno essere esportate fuori dall'excel, quindi ho bisogno di un
formato particolare.
xxx.xxxxxx
Il problema è che il numero da me inserito dovrebbe quindi essere
1) Se io scrivo nella cella 10,4 dovrei ottenere 010.400000
2) Se io scrivo nella cella 3,876 dovrei ottenere 003.876000
...come fare?
Posso a vostro parere personalizzare il formato del contenuto della cella?
o è meglio con una macro che trasformi i numeri inseriti nella stringa che
vorrei?
Che ne pensate?
Ciao, Luca.
Uno dei criteri base per una buona gestione dei dati e` la separazione
rigorosa delle tre fasi che la compongono: immissione, elaborazione e
emissione (input/process/output). Excel permette una sintesi di queste tre
fasi, in molti casi una sintesi felicissima, ma e` nostra responsabilita` e
convenienza essere coscienti che di cio` si tratta, una sintesi appunto.
Gli strumenti messici a disposizione da Excel per ottenere tale sintesi
sono orientati principalmente all'emissione a video o in stampa, due mezzi
estremamente affini.
Altra cosa e`, invece l'emissione di file in formati diversi da quello
standard. Siamo in presenza chiaramente di una fase distinta e peculiare
della gestione dei dati. Generalmente noi non dobbiamo preoccuparci d'altro
che della scelta del formato e le funzioni di conversione disponibili
faranno il resto. Non sempre e` cosi` e l'emissione in un formato specifico
richiede un'attenzione particolare. Voler mantenere la sintesi, in questo
caso la confusione, fra dati di input, loro elaborazione e formato di
emissione, quando tale formato non e` agevole o opportuno nella fase di
immissione e rappresentazione a video, e` controproducente e a volte, come
in questo caso, impossibile.
=SOSTITUISCI(TESTO(A1;"000,000000");",";".")
ottieni la conversione nel formato di emissione.
...ciao Maurizio...

certo che ho risolto, la tua formula funziona benissimo!!!!
Ho fatto una macro e sembra funzionare...
Sai cosa, hai proprio ragione per quanto riguarda la corretta gestione dei
dati.
In realtà io sto mettendo mani su un file che non ho creato io, quindi per
ora mi ci devo adeguare... poi col tempo anche secondo me bisognerebbe
tenere ben distinte le fasi quanto meno di input, ed elaborazione/output.

Ascolta... questa volta ti ho chiesto proprio una cosa stupida... ma visto
che tu sei proprio in gamba posso chiederti una cosa?
Hai un consiglio da darmi su un manuale (anche in inglese) che sia completo
e funzionale di VBA?

Ci sono in giro manuali / schifezza che ti spiegano come fare le cose, ma
non "perchè" si fanno così, quindi appena cambiano un po' le condizioni di
partenza, non ci si raccapezza più.
Volevo un qualcosa di più approfondito... pensi sia troppo ambizioso? Magari
un qualcosa non iper-complessa.

Sappi che il mio rapporto con l'informatica è ottimo... grazie a delle buone
basi anche se sto mettendo mani da meno di 10 giorni nel VBA, mi muovo già
tranquillamente e sono perfettamente cosciente di ciò che faccio :-)
Anche la tua soluzione per il mio problema precedente... è molto chiara,
vorrei però saperne di più. (per esempio non sapevo che si potesse
dimensionare una variabile come Excel.Range... il che è davvero molto
utile!! Solo che su un manualino / schifezza che ho c'è scritto che le
variabili sono date, integer, long, e altre 4 schifezze, ma vedo invece che
il discorso è più complicato...)

Insomma se hai consigli da darmi, fa pure, sono ben accetti...

...dimenticavo... grazie ancora una volta per il tuo tempo!!

Luca
Maurizio Borrelli
2004-11-11 23:47:39 UTC
Permalink
[...]
Post by Luk
Hai un consiglio da darmi su un manuale (anche in inglese) che sia
completo e funzionale di VBA?
[...]

Ciao, Luk.

Spiacente. Non so nulla di manuali. Tutto quello che mi interessa lo
trovo in rete. Consigli poi... non ne voglio, figurati se ne do`. :-D

Siamo in molti, non solo in questo ng, che da anni indichiamo un
"percorso" che per alcuni di noi pare sia stato efficace:

1. la guida in linea dell'applicazione;
1.1. la guida in linea dell'applicazione;
[...]
1.n. la guida in linea dell'applicazione;

2.1. lettura quotidiana del/dei newsgroup. Nel tuo caso Excel
/Visual Basic;

2.2. appena si e` in grado, si ha tempo, voglia: cimentarsi
nel rispondere ai quesiti del/dei newsgroup. Risolvere
i problemi degli altri chiarisce le proprie idee.
Pazienza se le prime volte oscura quelle dei richiedenti.
In fondo e` gratis. :-)

3.1. The Microsoft Developer Network (MSDN)
http://msdn.microsoft.com

3.2. Supporto Tecnico Microsoft - Ricerca avanzata
http://support.microsoft.com/search/?adv=1

3.3. Google Gruppi - Ricerca avanzata nei gruppi
http://www.google.it/advanced_group_search?hl=it

4. Navigare e` necessario... ma anche vivere. Quindi...
passeggiate all'aria aperta.

Altre indicazioni le trovi in questo recente thread:

http://www.google.it/groups?th=71d33639b4e670f1
--
Ciao :o)
Maurizio Borrelli, Microsoft MVP - Office Systems - Access
--------
?SPQR(C)
X
--------
Luk
2004-11-12 19:08:53 UTC
Permalink
Post by Maurizio Borrelli
[...]
Post by Luk
Hai un consiglio da darmi su un manuale (anche in inglese) che sia
completo e funzionale di VBA?
[...]
Ciao, Luk.
Spiacente. Non so nulla di manuali. Tutto quello che mi interessa lo
trovo in rete. Consigli poi... non ne voglio, figurati se ne do`. :-D
Siamo in molti, non solo in questo ng, che da anni indichiamo un
1. la guida in linea dell'applicazione;
1.1. la guida in linea dell'applicazione;
[...]
1.n. la guida in linea dell'applicazione;
2.1. lettura quotidiana del/dei newsgroup. Nel tuo caso Excel
/Visual Basic;
2.2. appena si e` in grado, si ha tempo, voglia: cimentarsi
nel rispondere ai quesiti del/dei newsgroup. Risolvere
i problemi degli altri chiarisce le proprie idee.
Pazienza se le prime volte oscura quelle dei richiedenti.
In fondo e` gratis. :-)
3.1. The Microsoft Developer Network (MSDN)
http://msdn.microsoft.com
3.2. Supporto Tecnico Microsoft - Ricerca avanzata
http://support.microsoft.com/search/?adv=1
3.3. Google Gruppi - Ricerca avanzata nei gruppi
http://www.google.it/advanced_group_search?hl=it
4. Navigare e` necessario... ma anche vivere. Quindi...
passeggiate all'aria aperta.
http://www.google.it/groups?th=71d33639b4e670f1
--
Ciao :o)
Maurizio Borrelli, Microsoft MVP - Office Systems - Access
--------
Ciao Maurizio,

come al soltio ti ringrazio per la disponibilità... hai proprio ragione...
infatti lo sai che mi leggo ormai ogni sera tutti i threads aperti e le
relative risposte?
E' un'ottima fonte di informazioni, e spero che anche io potrò prima o poi
cominciare a dare consigli... ma in fondo hai ragione, bisogna provare...
vorrà dire che la prossima volta appena capita qualcosa che penso di
riuscire a risolvere provo a dare una mano!!

Grazie ancora per tutto... e non metterti a ridere se trovi qualche mia
soluzione non proprio impeccabile :-) sono pur sempre un "principiante" :-)

Grazie ancora e ciao, alla prossima!!

Luk

Loading...